diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,bBIAANyFAAAIAAAAGAAAAAASAADshQAAiBIAAPuFAAAAAAAAAQAAADgAAAAAAAAAABIAADqGAAAAEgAAZ4YAAAASAACjhgAAABIAAK+GAABsEgAAzYYAAAgAAABoAAAAABIAAOWGAABsEgAA/IYAAAAAAACAAAAAABIAAAqHAABsEgAAG4cAAAAAAACYAAAAABIAACmHAABsEgAA6ogAAAAAAACwAAAAABIAAAeJAABsEgAAcYkAAAAAAADIAAAAABIAAHqJAABsEgAAgokAAAEAAABIAAAAbBIAAJGKAAAAAAAA8AAAAAASAAC0igAAbBIAAOCKAAAAAAAACAEAAAASAADuigAAbBIAAPuKAAAAAAAAIAEAAAASAAAFiwAAbBIAABGNAAAAAAAASAAAAGwSAAAajQAAAAAAAFAAAABsEgAAJY0AAAEAAACYAAAAbBIAAMCOAAABAAAAIAEAAGwSAADLjgAAAAAAAHgBAAAAEgAA2o4AAGwSAAAsjwAAAQAAAHgBAAAAEgAAUI8AAGwSAACNjwAAAQAAAMgAAABsEgAA8o8AAAEAAAAIAQAAbBIAAAGQAAABAAAAgAAAAAASAABmkQAAbBIAAKKRAAABAAAA4AEAAAASAACvkQAAbBIAAOSRAAAAAAAA4AEAAGwSAABGkgAAAAAAAAgCAAAAEgAAWpIAAGwSAABzkgAAAQAAAAgCAABsEgAAzZIAAAEAAABQAAAAbBIAANeSAAABAAAA8AAAAGwSAAC2kwAAAQAAALAAAAAAEgAAZpYAAAASAACllgAAABIAAOOWAAAAEgAAKZcAAAASAABmlwAAABIAAIWXAAAAEgAApJcAAAASAADDlwAAABIAAOKXAAAAEgAAAZgAAIgSAAA+mAAAAAAAAAEAAAA4AAAAAAAAAIgSAAB9mAAAAAAAAAEAAAA4AAAAAAAAAAASAABDpAAAKBIAAKOkAADoAgAAAAAAACgSAABQpAAA+AIAAAAAAAAAEgAAcaQAACgSAAB+pAAA2AIAAAAAAAAoEgAAqaUAAOgCAAAAAAAAKBIAAIWlAAAQAwAAAAAAACgSAADLpQAA6AIAAAAAAABQEgAA86UAAGwSAAD1pQAAAAAAAEADAABQEgAA+KUAAFASAAD7pQAAUBIAAP2lAABQEgAA/6UAAFASAAABpgAAUBIAAAOmAABQEgAABaYAAFASAAAHpgAAUBIAAAmmAABQEgAAC6YAAFASAAANpgAAUBIAAA+mAABQEgAAEaYAACgSAAATpgAA2AIAAAAAAADkpgAAlCQAAJgkAACcJAAAoCQAAKQkAACkJAAApCQAAKQkAACqJAAAsiQAALokAADCJAAAyiQAANIkAADaJAAAwiQAAOIkAADiJAAA4iQAAOIkAADoJAAA8CQAAPgkAAAAJQAACCUAABAlAAAYJQAAACUAAP8AAP///wD/AP8A/wD///8AAP///wD///8AAP8DAAAAAQAAAAAAAAACAAAAAQAAAAMAAAACAAAAAAAAAAEAAAAAAAAAAgAAAAQAAAABAAAADAAAAAEAAAAQAAAAAgAAABQAAAABAAAAJAAAAAEAAAAoAAAAAQAAACwAAAABAAAAMAAAAAIAAAA0AAAAAQAAADwAAAABAAAAQAAAAAIAAABEAAAAAgAAAEwAAAABAAAAXAAAAAEAAABsAAAAAgAAAHQAAAAAAIA/zczMPQrXIzxvEoM6F7fROKzFJze9N4Y1lb/WM3fMKzJfcIkwAAAAAAAAQEAAAEBBAACYQQAAAAAAAAAAAABQQQAAAAAAAOBAAACAQQAAgEAAAABBAAD4QQAAAAAAALhBAAC4QQAAMEEAADBBAACoQQAAAAAAABBBAAC4QQAAoEAAADBBAABcQgAAkEEAALhBAAAQQQAAMEEAAKBAAACSQgAAAAAAAIhBAACIQQAAEEEAABBBAABcQgAAAAAAAIhBAACIQQAAEEEAABBBCAAAACAAAABIAwAAQAAAAJgDAABAAAAAkAMAALADAABAAAAAYAMAAEAAAACwAwAAYAMAAEAAAABAAAAAYAMAAGADAACQAwAAsAMAAJADAACQAwAAsAMAALADAABgAwAAkAMAAGADAACQAwAAkAMAAEADAACwAwAAsAMAALADAABAAAAAQAAAAEAAAACYAwAASAAAAEAAAACYAwAAQAAAAGADAACYAwAAUAAAAJADAABAAwAAkAMAALADAABAAAAAQAAAAEAAAAAgAAAAQAAAAGADAACwAwAAQAAAAEAAAABAAAAAYAMAALADAABAAAAAIAAAAJADAABgAwAAQAAAAEAAAABgAwAAkAMAAEADAACIAAAAQAMAAEAAAABAAAAAYAMAAEAAAAAgAAAAkAMAAGADAAAgAAAAQAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,SBMAADyMAAAAAAAAAQAAACAAAAAAAAAAwBIAAHuMAADAEgAApYwAAMASAADhjAAAwBIAAO2MAAAsEwAABI0AAAgAAABQAAAAwBIAAByNAAAsEwAAM40AAAAAAABoAAAAwBIAAEGNAAAsEwAAAo8AAAAAAACAAAAAwBIAAB+PAAAsEwAAkI8AAAAAAACYAAAAwBIAAJmPAAAsEwAAoY8AAAEAAAAwAAAALBMAALCQAAAAAAAAwAAAAMASAADJkAAALBMAAOiQAAAAAAAA2AAAAMASAAD2kAAALBMAAAaRAAAAAAAA8AAAAMASAAAUkQAALBMAACGRAAAAAAAACAEAAMASAAArkQAALBMAADSRAAAIAAAAIAEAAMASAABEkQAAwBIAAGCRAAAsEwAAcpEAAAEAAAAoAQAALBMAAISRAAAAAAAAKAEAACwTAACpkwAAAAAAADAAAAAsEwAAspMAAAAAAAA4AAAALBMAALuTAAABAAAA2AAAACwTAAC9lQAAAQAAAAgBAAAsEwAAyJUAAAEAAAA4AAAALBMAAN2VAAAAAAAAsAEAAMASAADslQAALBMAAD6WAAABAAAAsAEAAMASAABilgAALBMAAJ+WAAABAAAAmAAAACwTAAAElwAAAQAAAPAAAAAsEwAAE5cAAAEAAABoAAAAwBIAAHiYAAAsEwAAtJgAAAEAAAAYAgAAwBIAAMGYAAAsEwAA9pgAAAAAAAAYAgAALBMAAFiZAAAAAAAAQAIAAMASAABsmQAALBMAAIWZAAABAAAAQAIAACwTAADVmQAAAQAAAMAAAAAsEwAAqpoAAAEAAACAAAAAwBIAAFqdAADAEgAAmZ0AAMASAADXnQAAwBIAAB2eAADAEgAAWp4AAMASAAB5ngAAwBIAAJieAADAEgAAt54AAMASAADWngAAwBIAAPWeAABIEwAAMp8AAAAAAAABAAAAIAAAAAAAAABIEwAAcZ8AAAAAAAABAAAAIAAAAAAAAADAEgAAN6sAAOgSAACXqwAAEAMAAAAAAADoEgAARKsAACADAAAAAAAAwBIAAGWrAADoEgAAcqsAAAADAAAAAAAA6BIAAJ2sAAAQAwAAAAAAAOgSAAB5rAAAOAMAAAAAAADoEgAAv6wAABADAAAAAAAAEBMAAOesAAAsEwAA6awAAAAAAABoAwAAEBMAAOysAAAQEwAA76wAABATAADxrAAAEBMAAPOsAAAQEwAA9awAABATAAD3rAAAEBMAAPmsAAAQEwAA+6wAABATAAD9rAAAEBMAAP+sAAAQEwAAAa0AABATAAADrQAAEBMAAAWtAADoEgAAB60AAAADAAAAAAAAAACAPwAAgD8AAIC/AACAvwAAAAADAAAAAAAAAAAAgD8AAIA/AACAvwMAAAAGAAAAAAAAAAAAAAAAAIA/AACAPwYAAAAJAAAAAACAPwAAAAAAAIC/AACAPwkAAAAMAAAAgScAAIUnAACJJwAAjScAAJEnAACRJwAAkScAAJEnAACXJwAAnycAAKcnAACvJwAAtycAAL8nAADHJwAArycAAM8nAADPJwAAzycAAM8nAADVJwAA3ScAAOUnAADtJwAA9ScAAP0nAAAFKAAA7ScAAP8AAP///wD/AP8A/wD///8AAP///wD///8AAP/TLAAA2CwAAN4sAADiLAAA7SwAAAMAAAABAAAAAAAAAAIAAAABAAAAAwAAAAIAAAAAAAAAAQAAAAAAAAACAAAABAAAAAEAAAAMAAAAAQAAABAAAAACAAAAFAAAAAIAAAAcAAAAAQAAACQAAAABAAAAKAAAAAEAAAAsAAAAAQAAADAAAAACAAAANAAAAAEAAAA8AAAAAQAAAEAAAAACAAAARAAAAAIAAABMAAAAAQAAAFwAAAABAAAAZAAAAAEAAABoAAAAAQAAAGwAAAABAAAAcAAAAAIAAAB0AAAAAACAP83MzD0K1yM8bxKDOhe30TisxSc3vTeGNZW/1jN3zCsyX3CJMAAAAAAAAEBAAABAQQAAmEEAAAAAAAAAAAAAUEEAAAAAAADgQAAAgEEAAIBAAAAAQQAA+EEAAAAAAAC4QQAAuEEAADBBAAAwQQAAqEEAAAAAAAAQQQAAuEEAAKBAAAAwQQAAXEIAAJBBAAC4QQAAEEEAADBBAACgQAAAkkIAAAAAAACIQQAAiEEAABBBAAAQQQAAXEIAAAAAAACIQQAAiEEAABBBAAAQQQgAAABwAwAAKAAAAMADAAAoAAAAuAMAANgDAAAoAAAAiAMAACgAAADYAwAAiAMAACgAAAAoAAAAiAMAAIgDAAC4AwAA2AMAALgDAAC4AwAA2AMAANgDAACIAwAAuAMAAIgDAAC4AwAAuAMAAGgDAADYAwAA2AMAANgDAAAoAAAAKAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAAKAAAAMADAADYAwAAuAMAAGgDAABoAAAAKAAAACgAAADAAwAA2AMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAAMADAADYAwAAaAMAAFgAAABoAwAAaAAAACgAAAAoAAAAiAMAAGgDAADwAQAAKAAAACgAAAAIAgAAaAMAADACAABoAwAAMAIAALgDAADYAwAAiAMAADACAAAwAgAAuAMAANgDAAAwAgAAuAMAADACAAAoAAAAwAAAALAAAACIAwAAaAIAAGgDAACAAAAAuAMAAAgAAAAoAAAAaAMAAHAAAAC4AwAAuAMAAGgDAACAAAAACAAAAAgAAACAAAAAcAAAACgAAAAoAAAAKAAAAFABAADYAwAA2AMAANgDAADYAwAAUAEAAGABAADYAwAA2AMAAGABAABQDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAABKtAAAAAQAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACv////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAPAADUDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAIAAABSuAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAMADAADABAAAwAUAAMAGAADABwAAwAgAAMAJAADACgAAwAsAAMAMAADADQAAwA4AAMAPAADAEAAAwBEAAMASAADAEwAAwBQAAMAVAADAFgAAwBcAAMAYAADAGQAAwBoAAMAbAADAHAAAwB0AAMAeAADAHwAAwAAAALMBAADDAgAAwwMAAMMEAADDBQAAwwYAAMMHAADDCAAAwwkAAMMKAADDCwAAwwwAAMMNAADTDgAAww8AAMMAAAy7AQAMwwIADMMDAAzDBAAM0wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvDwEAAAAAAAAAAAMAAAEAAAACAAAAAwAAAAQAAAAFAAAAAQAAAAEAAAABAAAAAAAAACgDAAABAAAABQAAAAMAAAAEAAAABQAAAAIAAAACAAAAAgAAAAAAAABYAwAAAQAAAAYAAAADAAAABAAAAAYAAAAAAAAASAMAAAEAAAAHAAAAAwAAAAQAAAAHAAAAAAAAAOgDAAABAAAACAAAAAMAAAAEAAAABQAAAAMAAAADAAAAAwAAACAA/wAAAGltZ3VpLmluaQBpbWd1aV9sb2cudHh0AGZpbGVuYW1lICYmIGZpbGVfb3Blbl9tb2RlAGltZ3VpL2ltZ3VpLmNwcABJbUZpbGVMb2FkVG9NZW1vcnkAQ291bnQgPD0gKChpbnQpKHNpemVvZihQb3MpL3NpemVvZigqUG9zKSkpAFVwZGF0ZQBpdGVtc19oZWlnaHQgPiAwLjBmAERpc3BsYXlTdGFydCA+PSAwICYmIERpc3BsYXlFbmQgPj0gMAAjTU9WRQBpZCAhPSAwAFNldEZvY3VzSUQAKGZsYWdzICYgKEltR3VpSG92ZXJlZEZsYWdzX1Jvb3RXaW5kb3cgfCBJbUd1aUhvdmVyZWRGbGFnc19DaGlsZFdpbmRvd3MpKSA9PSAwAEdJbUd1aSAhPSAwTCAmJiAiTm8gY3VycmVudCBjb250ZXh0LiBEaWQgeW91IGNhbGwgSW1HdWk6OkNyZWF0ZUNvbnRleHQoKSBvciBJbUd1aTo6U2V0Q3VycmVudENvbnRleHQoKT8iAHdpbmRvdyA9PSBnLk5hdldpbmRvdwBOYXZJbml0V2luZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,SBMAADyMAAAAAAAAAQAAACAAAAAAAAAAwBIAAHuMAADAEgAApYwAAMASAADhjAAAwBIAAO2MAAAsEwAABI0AAAgAAABQAAAAwBIAAByNAAAsEwAAM40AAAAAAABoAAAAwBIAAEGNAAAsEwAAAo8AAAAAAACAAAAAwBIAAB+PAAAsEwAAkI8AAAAAAACYAAAAwBIAAJmPAAAsEwAAoY8AAAEAAAAwAAAALBMAALCQAAAAAAAAwAAAAMASAADJkAAALBMAAOiQAAAAAAAA2AAAAMASAAD2kAAALBMAAAaRAAAAAAAA8AAAAMASAAAUkQAALBMAACGRAAAAAAAACAEAAMASAAArkQAALBMAADSRAAAIAAAAIAEAAMASAABEkQAAwBIAAGCRAAAsEwAAcpEAAAEAAAAoAQAALBMAAISRAAAAAAAAKAEAACwTAACpkwAAAAAAADAAAAAsEwAAspMAAAAAAAA4AAAALBMAALuTAAABAAAA2AAAACwTAAC9lQAAAQAAAAgBAAAsEwAAyJUAAAEAAAA4AAAALBMAAN2VAAAAAAAAsAEAAMASAADslQAALBMAAD6WAAABAAAAsAEAAMASAABilgAALBMAAJ+WAAABAAAAmAAAACwTAAAElwAAAQAAAPAAAAAsEwAAE5cAAAEAAABoAAAAwBIAAHiYAAAsEwAAtJgAAAEAAAAYAgAAwBIAAMGYAAAsEwAA9pgAAAAAAAAYAgAALBMAAFiZAAAAAAAAQAIAAMASAABsmQAALBMAAIWZAAABAAAAQAIAACwTAADVmQAAAQAAAMAAAAAsEwAAqpoAAAEAAACAAAAAwBIAAFqdAADAEgAAmZ0AAMASAADXnQAAwBIAAB2eAADAEgAAWp4AAMASAAB5ngAAwBIAAJieAADAEgAAt54AAMASAADWngAAwBIAAPWeAABIEwAAMp8AAAAAAAABAAAAIAAAAAAAAABIEwAAcZ8AAAAAAAABAAAAIAAAAAAAAADAEgAAN6sAAOgSAACXqwAAEAMAAAAAAADoEgAARKsAACADAAAAAAAAwBIAAGWrAADoEgAAcqsAAAADAAAAAAAA6BIAAJ2sAAAQAwAAAAAAAOgSAAB5rAAAOAMAAAAAAADoEgAAv6wAABADAAAAAAAAEBMAAOesAAAsEwAA6awAAAAAAABoAwAAEBMAAOysAAAQEwAA76wAABATAADxrAAAEBMAAPOsAAAQEwAA9awAABATAAD3rAAAEBMAAPmsAAAQEwAA+6wAABATAAD9rAAAEBMAAP+sAAAQEwAAAa0AABATAAADrQAAEBMAAAWtAADoEgAAB60AAAADAAAAAAAAAACAPwAAgD8AAIC/AACAvwAAAAADAAAAAAAAAAAAgD8AAIA/AACAvwMAAAAGAAAAAAAAAAAAAAAAAIA/AACAPwYAAAAJAAAAAACAPwAAAAAAAIC/AACAPwkAAAAMAAAAgScAAIUnAACJJwAAjScAAJEnAACRJwAAkScAAJEnAACXJwAAnycAAKcnAACvJwAAtycAAL8nAADHJwAArycAAM8nAADPJwAAzycAAM8nAADVJwAA3ScAAOUnAADtJwAA9ScAAP0nAAAFKAAA7ScAAP8AAP///wD/AP8A/wD///8AAP///wD///8AAP/TLAAA2CwAAN4sAADiLAAA7SwAAAMAAAABAAAAAAAAAAIAAAABAAAAAwAAAAIAAAAAAAAAAQAAAAAAAAACAAAABAAAAAEAAAAMAAAAAQAAABAAAAACAAAAFAAAAAIAAAAcAAAAAQAAACQAAAABAAAAKAAAAAEAAAAsAAAAAQAAADAAAAACAAAANAAAAAEAAAA8AAAAAQAAAEAAAAACAAAARAAAAAIAAABMAAAAAQAAAFwAAAABAAAAZAAAAAEAAABoAAAAAQAAAGwAAAABAAAAcAAAAAIAAAB0AAAAAACAP83MzD0K1yM8bxKDOhe30TisxSc3vTeGNZW/1jN3zCsyX3CJMAAAAAAAAEBAAABAQQAAmEEAAAAAAAAAAAAAUEEAAAAAAADgQAAAgEEAAIBAAAAAQQAA+EEAAAAAAAC4QQAAuEEAADBBAAAwQQAAqEEAAAAAAAAQQQAAuEEAAKBAAAAwQQAAXEIAAJBBAAC4QQAAEEEAADBBAACgQAAAkkIAAAAAAACIQQAAiEEAABBBAAAQQQAAXEIAAAAAAACIQQAAiEEAABBBAAAQQQgAAABwAwAAKAAAAMADAAAoAAAAuAMAANgDAAAoAAAAiAMAACgAAADYAwAAiAMAACgAAAAoAAAAiAMAAIgDAAC4AwAA2AMAALgDAAC4AwAA2AMAANgDAACIAwAAuAMAAIgDAAC4AwAAuAMAAGgDAADYAwAA2AMAANgDAAAoAAAAKAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,bBIAANyFAAAIAAAAGAAAAAASAADshQAAiBIAAPuFAAAAAAAAAQAAADgAAAAAAAAAABIAADqGAAAAEgAAZ4YAAAASAACjhgAAABIAAK+GAABsEgAAzYYAAAgAAABoAAAAABIAAOWGAABsEgAA/IYAAAAAAACAAAAAABIAAAqHAABsEgAAG4cAAAAAAACYAAAAABIAACmHAABsEgAA6ogAAAAAAACwAAAAABIAAAeJAABsEgAAcYkAAAAAAADIAAAAABIAAHqJAABsEgAAgokAAAEAAABIAAAAbBIAAJGKAAAAAAAA8AAAAAASAAC0igAAbBIAAOCKAAAAAAAACAEAAAASAADuigAAbBIAAPuKAAAAAAAAIAEAAAASAAAFiwAAbBIAABGNAAAAAAAASAAAAGwSAAAajQAAAAAAAFAAAABsEgAAJY0AAAEAAACYAAAAbBIAAMCOAAABAAAAIAEAAGwSAADLjgAAAAAAAHgBAAAAEgAA2o4AAGwSAAAsjwAAAQAAAHgBAAAAEgAAUI8AAGwSAACNjwAAAQAAAMgAAABsEgAA8o8AAAEAAAAIAQAAbBIAAAGQAAABAAAAgAAAAAASAABmkQAAbBIAAKKRAAABAAAA4AEAAAASAACvkQAAbBIAAOSRAAAAAAAA4AEAAGwSAABGkgAAAAAAAAgCAAAAEgAAWpIAAGwSAABzkgAAAQAAAAgCAABsEgAAzZIAAAEAAABQAAAAbBIAANeSAAABAAAA8AAAAGwSAAC2kwAAAQAAALAAAAAAEgAAZpYAAAASAACllgAAABIAAOOWAAAAEgAAKZcAAAASAABmlwAAABIAAIWXAAAAEgAApJcAAAASAADDlwAAABIAAOKXAAAAEgAAAZgAAIgSAAA+mAAAAAAAAAEAAAA4AAAAAAAAAIgSAAB9mAAAAAAAAAEAAAA4AAAAAAAAAAASAABDpAAAKBIAAKOkAADoAgAAAAAAACgSAABQpAAA+AIAAAAAAAAAEgAAcaQAACgSAAB+pAAA2AIAAAAAAAAoEgAAqaUAAOgCAAAAAAAAKBIAAIWlAAAQAwAAAAAAACgSAADLpQAA6AIAAAAAAABQEgAA86UAAGwSAAD1pQAAAAAAAEADAABQEgAA+KUAAFASAAD7pQAAUBIAAP2lAABQEgAA/6UAAFASAAABpgAAUBIAAAOmAABQEgAABaYAAFASAAAHpgAAUBIAAAmmAABQEgAAC6YAAFASAAANpgAAUBIAAA+mAABQEgAAEaYAACgSAAATpgAA2AIAAAAAAADkpgAAlCQAAJgkAACcJAAAoCQAAKQkAACkJAAApCQAAKQkAACqJAAAsiQAALokAADCJAAAyiQAANIkAADaJAAAwiQAAOIkAADiJAAA4iQAAOIkAADoJAAA8CQAAPgkAAAAJQAACCUAABAlAAAYJQAAACUAAP8AAP///wD/AP8A/wD///8AAP///wD///8AAP8DAAAAAQAAAAAAAAACAAAAAQAAAAMAAAACAAAAAAAAAAEAAAAAAAAAAgAAAAQAAAABAAAADAAAAAEAAAAQAAAAAgAAABQAAAABAAAAJAAAAAEAAAAoAAAAAQAAACwAAAABAAAAMAAAAAIAAAA0AAAAAQAAADwAAAABAAAAQAAAAAIAAABEAAAAAgAAAEwAAAABAAAAXAAAAAEAAABsAAAAAgAAAHQAAAAAAIA/zczMPQrXIzxvEoM6F7fROKzFJze9N4Y1lb/WM3fMKzJfcIkwAAAAAAAAQEAAAEBBAACYQQAAAAAAAAAAAABQQQAAAAAAAOBAAACAQQAAgEAAAABBAAD4QQAAAAAAALhBAAC4QQAAMEEAADBBAACoQQAAAAAAABBBAAC4QQAAoEAAADBBAABcQgAAkEEAALhBAAAQQQAAMEEAAKBAAACSQgAAAAAAAIhBAACIQQAAEEEAABBBAABcQgAAAAAAAIhBAACIQQAAEEEAABBBCAAAACAAAABIAwAAQAAAAJgDAABAAAAAkAMAALADAABAAAAAYAMAAEAAAACwAwAAYAMAAEAAAABAAAAAYAMAAGADAACQAwAAsAMAAJADAACQAwAAsAMAALADAABgAwAAkAMAAGADAACQAwAAkAMAAEADAACwAwAAsAMAALADAABAAAAAQAAAAEAAAACYAwAASAAAAEAAAACYAwAAQAAAAGADAACYAwAAUAAAAJADAABAAwAAkAMAALADAABAAAAAQAAAAEAAAAAgAAAAQAAAAGADAACwAwAAQAAAAEAAAABAAAAAYAMAALADAABAAAAAIAAAAJADAABgAwAAQAAAAEAAAABgAwAAkAMAAEADAACIAAAAQAMAAEAAAABAAAAAYAMAAEAAAAAgAAAAkAMAAGADAAAgAAAAQAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,SBMAADyMAAAAAAAAAQAAACAAAAAAAAAAwBIAAHuMAADAEgAApYwAAMASAADhjAAAwBIAAO2MAAAsEwAABI0AAAgAAABQAAAAwBIAAByNAAAsEwAAM40AAAAAAABoAAAAwBIAAEGNAAAsEwAAAo8AAAAAAACAAAAAwBIAAB+PAAAsEwAAkI8AAAAAAACYAAAAwBIAAJmPAAAsEwAAoY8AAAEAAAAwAAAALBMAALCQAAAAAAAAwAAAAMASAADJkAAALBMAAOiQAAAAAAAA2AAAAMASAAD2kAAALBMAAAaRAAAAAAAA8AAAAMASAAAUkQAALBMAACGRAAAAAAAACAEAAMASAAArkQAALBMAADSRAAAIAAAAIAEAAMASAABEkQAAwBIAAGCRAAAsEwAAcpEAAAEAAAAoAQAALBMAAISRAAAAAAAAKAEAACwTAACpkwAAAAAAADAAAAAsEwAAspMAAAAAAAA4AAAALBMAALuTAAABAAAA2AAAACwTAAC9lQAAAQAAAAgBAAAsEwAAyJUAAAEAAAA4AAAALBMAAN2VAAAAAAAAsAEAAMASAADslQAALBMAAD6WAAABAAAAsAEAAMASAABilgAALBMAAJ+WAAABAAAAmAAAACwTAAAElwAAAQAAAPAAAAAsEwAAE5cAAAEAAABoAAAAwBIAAHiYAAAsEwAAtJgAAAEAAAAYAgAAwBIAAMGYAAAsEwAA9pgAAAAAAAAYAgAALBMAAFiZAAAAAAAAQAIAAMASAABsmQAALBMAAIWZAAABAAAAQAIAACwTAADVmQAAAQAAAMAAAAAsEwAAqpoAAAEAAACAAAAAwBIAAFqdAADAEgAAmZ0AAMASAADXnQAAwBIAAB2eAADAEgAAWp4AAMASAAB5ngAAwBIAAJieAADAEgAAt54AAMASAADWngAAwBIAAPWeAABIEwAAMp8AAAAAAAABAAAAIAAAAAAAAABIEwAAcZ8AAAAAAAABAAAAIAAAAAAAAADAEgAAN6sAAOgSAACXqwAAEAMAAAAAAADoEgAARKsAACADAAAAAAAAwBIAAGWrAADoEgAAcqsAAAADAAAAAAAA6BIAAJ2sAAAQAwAAAAAAAOgSAAB5rAAAOAMAAAAAAADoEgAAv6wAABADAAAAAAAAEBMAAOesAAAsEwAA6awAAAAAAABoAwAAEBMAAOysAAAQEwAA76wAABATAADxrAAAEBMAAPOsAAAQEwAA9awAABATAAD3rAAAEBMAAPmsAAAQEwAA+6wAABATAAD9rAAAEBMAAP+sAAAQEwAAAa0AABATAAADrQAAEBMAAAWtAADoEgAAB60AAAADAAAAAAAAAACAPwAAgD8AAIC/AACAvwAAAAADAAAAAAAAAAAAgD8AAIA/AACAvwMAAAAGAAAAAAAAAAAAAAAAAIA/AACAPwYAAAAJAAAAAACAPwAAAAAAAIC/AACAPwkAAAAMAAAAgScAAIUnAACJJwAAjScAAJEnAACRJwAAkScAAJEnAACXJwAAnycAAKcnAACvJwAAtycAAL8nAADHJwAArycAAM8nAADPJwAAzycAAM8nAADVJwAA3ScAAOUnAADtJwAA9ScAAP0nAAAFKAAA7ScAAP8AAP///wD/AP8A/wD///8AAP///wD///8AAP/TLAAA2CwAAN4sAADiLAAA7SwAAAMAAAABAAAAAAAAAAIAAAABAAAAAwAAAAIAAAAAAAAAAQAAAAAAAAACAAAABAAAAAEAAAAMAAAAAQAAABAAAAACAAAAFAAAAAIAAAAcAAAAAQAAACQAAAABAAAAKAAAAAEAAAAsAAAAAQAAADAAAAACAAAANAAAAAEAAAA8AAAAAQAAAEAAAAACAAAARAAAAAIAAABMAAAAAQAAAFwAAAABAAAAZAAAAAEAAABoAAAAAQAAAGwAAAABAAAAcAAAAAIAAAB0AAAAAACAP83MzD0K1yM8bxKDOhe30TisxSc3vTeGNZW/1jN3zCsyX3CJMAAAAAAAAEBAAABAQQAAmEEAAAAAAAAAAAAAUEEAAAAAAADgQAAAgEEAAIBAAAAAQQAA+EEAAAAAAAC4QQAAuEEAADBBAAAwQQAAqEEAAAAAAAAQQQAAuEEAAKBAAAAwQQAAXEIAAJBBAAC4QQAAEEEAADBBAACgQAAAkkIAAAAAAACIQQAAiEEAABBBAAAQQQAAXEIAAAAAAACIQQAAiEEAABBBAAAQQQgAAABwAwAAKAAAAMADAAAoAAAAuAMAANgDAAAoAAAAiAMAACgAAADYAwAAiAMAACgAAAAoAAAAiAMAAIgDAAC4AwAA2AMAALgDAAC4AwAA2AMAANgDAACIAwAAuAMAAIgDAAC4AwAAuAMAAGgDAADYAwAA2AMAANgDAAAoAAAAKAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAAKAAAAMADAADYAwAAuAMAAGgDAABoAAAAKAAAACgAAADAAwAA2AMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAAMADAADYAwAAaAMAAFgAAABoAwAAaAAAACgAAAAoAAAAiAMAAGgDAADwAQAAKAAAACgAAAAIAgAAaAMAADACAABoAwAAMAIAALgDAADYAwAAiAMAADACAAAwAgAAuAMAANgDAAAwAgAAuAMAADACAAAoAAAAwAAAALAAAACIAwAAaAIAAGgDAACAAAAAuAMAAAgAAAAoAAAAaAMAAHAAAAC4AwAAuAMAAGgDAACAAAAACAAAAAgAAACAAAAAcAAAACgAAAAoAAAAKAAAAFABAADYAwAA2AMAANgDAADYAwAAUAEAAGABAADYAwAA2AMAAGABAABQDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAABKtAAAAAQAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACv////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAPAADUDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAIAAABSuAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAMADAADABAAAwAUAAMAGAADABwAAwAgAAMAJAADACgAAwAsAAMAMAADADQAAwA4AAMAPAADAEAAAwBEAAMASAADAEwAAwBQAAMAVAADAFgAAwBcAAMAYAADAGQAAwBoAAMAbAADAHAAAwB0AAMAeAADAHwAAwAAAALMBAADDAgAAwwMAAMMEAADDBQAAwwYAAMMHAADDCAAAwwkAAMMKAADDCwAAwwwAAMMNAADTDgAAww8AAMMAAAy7AQAMwwIADMMDAAzDBAAM0wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvDwEAAAAAAAAAAAMAAAEAAAACAAAAAwAAAAQAAAAFAAAAAQAAAAEAAAABAAAAAAAAACgDAAABAAAABQAAAAMAAAAEAAAABQAAAAIAAAACAAAAAgAAAAAAAABYAwAAAQAAAAYAAAADAAAABAAAAAYAAAAAAAAASAMAAAEAAAAHAAAAAwAAAAQAAAAHAAAAAAAAAOgDAAABAAAACAAAAAMAAAAEAAAABQAAAAMAAAADAAAAAwAAACAA/wAAAGltZ3VpLmluaQBpbWd1aV9sb2cudHh0AGZpbGVuYW1lICYmIGZpbGVfb3Blbl9tb2RlAGltZ3VpL2ltZ3VpLmNwcABJbUZpbGVMb2FkVG9NZW1vcnkAQ291bnQgPD0gKChpbnQpKHNpemVvZihQb3MpL3NpemVvZigqUG9zKSkpAFVwZGF0ZQBpdGVtc19oZWlnaHQgPiAwLjBmAERpc3BsYXlTdGFydCA+PSAwICYmIERpc3BsYXlFbmQgPj0gMAAjTU9WRQBpZCAhPSAwAFNldEZvY3VzSUQAKGZsYWdzICYgKEltR3VpSG92ZXJlZEZsYWdzX1Jvb3RXaW5kb3cgfCBJbUd1aUhvdmVyZWRGbGFnc19DaGlsZFdpbmRvd3MpKSA9PSAwAEdJbUd1aSAhPSAwTCAmJiAiTm8gY3VycmVudCBjb250ZXh0LiBEaWQgeW91IGNhbGwgSW1HdWk6OkNyZWF0ZUNvbnRleHQoKSBvciBJbUd1aTo6U2V0Q3VycmVudENvbnRleHQoKT8iAHdpbmRvdyA9PSBnLk5hdldpbmRvdwBOYXZJbml0V2luZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixFQUFFLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUNwQixFQUFFLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNsQixFQUFFLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUNwQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQzNCLENBQUM7WUFDRCxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQzVCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFvQixFQUFRLEVBQUU7WUFDOUQsTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLEVBQUUsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUMzQixFQUFFLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDN0IsRUFBRSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3pCLEVBQUUsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUM1QixLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN2RixFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDbEMsRUFBRSxDQUFDLENBQStCLEtBQUssQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzNCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFvQixFQUFRLEVBQUU7WUFDNUQsTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLEVBQUUsQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUMzQixFQUFFLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDN0IsRUFBRSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3pCLEVBQUUsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUM1QixLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN2RixFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFLLENBQUM7WUFDbkMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztnQkFDekIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzNCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFvQixFQUFRLEVBQUU7WUFDL0QsTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztnQkFDekIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzNCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFpQixFQUFRLEVBQUU7WUFDN0QsTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDOUIsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUM5QixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDM0IsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsb0JBQW9CO1FBQ3BCLHdDQUF3QztRQUN4Qyw4RUFBOEU7UUFDOUUsMEZBQTBGO1FBQzFGLHdEQUF3RDtRQUN4RCxzREFBc0Q7UUFDdEQsd0RBQXdEO1FBQ3hELE1BQU0sZ0JBQWdCLEdBQWEsQ0FBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFFLENBQUM7UUFFckQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQWlCLEVBQVEsRUFBRTtZQUM3RCxNQUFNLEVBQUUsR0FBWSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDcEQsNkJBQTZCO1lBQzdCLDhCQUE4QjtZQUM5QixJQUFJO1FBQ1IsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBbUIsRUFBUSxFQUFFO1lBQ2pFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUMzQixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQzNELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUNyRCxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDM0IsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQWlCLEVBQVEsRUFBRTtZQUN6RCxNQUFNLEVBQUUsR0FBWSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEMsSUFBSSxLQUFLLEdBQVcsR0FBRyxDQUFDO1lBQ3hCLE1BQU0sQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixLQUFLLEtBQUssQ0FBQyxlQUFlO29CQUFFLEtBQUssR0FBRyxJQUFJLENBQUM7b0JBQUMsS0FBSyxDQUFDO2dCQUNoRCxLQUFLLEtBQUssQ0FBQyxjQUFjO29CQUFFLEtBQUssR0FBRyxHQUFHLENBQUM7b0JBQUMsS0FBSyxDQUFDO2dCQUM5QyxLQUFLLEtBQUssQ0FBQyxjQUFjO29CQUFFLEtBQUssR0FBRyxHQUFHLENBQUM7b0JBQUMsS0FBSyxDQUFDO1lBQ2xELENBQUM7WUFDRCxFQUFFLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3RDLEVBQUUsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLGtEQUFrRDtZQUN6RixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDM0IsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELHVEQUF1RDtJQUN2RCx1REFBdUQ7SUFDdkQsK0JBQStCO0lBRS9CLHNGQUFzRjtJQUN0RixFQUFFLENBQUMsTUFBTSxhQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLEVBQUUsQ0FBQyxNQUFNLG1CQUFvQixHQUFHLEVBQUUsQ0FBQztJQUNuQyxFQUFFLENBQUMsTUFBTSxvQkFBcUIsR0FBRyxFQUFFLENBQUM7SUFDcEMsRUFBRSxDQUFDLE1BQU0saUJBQWtCLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLEVBQUUsQ0FBQyxNQUFNLG1CQUFvQixHQUFHLEVBQUUsQ0FBQztJQUNuQyxFQUFFLENBQUMsTUFBTSxnQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDaEMsRUFBRSxDQUFDLE1BQU0sa0JBQW1CLEdBQUcsRUFBRSxDQUFDO0lBQ2xDLEVBQUUsQ0FBQyxNQUFNLGNBQWUsR0FBRyxFQUFFLENBQUM7SUFDOUIsRUFBRSxDQUFDLE1BQU0sYUFBYyxHQUFHLEVBQUUsQ0FBQztJQUM3QixFQUFFLENBQUMsTUFBTSxnQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDaEMsRUFBRSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQ2hDLEVBQUUsQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsQ0FBQztJQUNsQyxFQUFFLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFDL0IsRUFBRSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBQy9CLEVBQUUsQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUNoQyxFQUFFLENBQUMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQzNCLEVBQUUsQ0FBQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDM0IsRUFBRSxDQUFDLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUMzQixFQUFFLENBQUMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQzNCLEVBQUUsQ0FBQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDM0IsRUFBRSxDQUFDLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUUzQixrQkFBa0I7SUFDbEIsTUFBTSxZQUFZLEdBQXdCLFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3ZGLE1BQU0saUJBQWlCLEdBQXVCLFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRTdGLE1BQU0sYUFBYSxHQUFhO1FBQzVCLHVCQUF1QjtRQUN2QiwwQkFBMEI7UUFDMUIsb0JBQW9CO1FBQ3BCLHVCQUF1QjtRQUN2Qix1QkFBdUI7UUFDdkIsMEJBQTBCO1FBQzFCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsc0JBQXNCO1FBQ3RCLGlEQUFpRDtRQUNqRCxHQUFHO0tBQ04sQ0FBQztJQUVGLE1BQU0sZUFBZSxHQUFhO1FBQzlCLHdCQUF3QjtRQUN4QiwrREFBK0Q7UUFDL0QsZ0VBQWdFO1FBQ2hFLDBCQUEwQjtRQUMxQixTQUFTO1FBQ1QsNEJBQTRCO1FBQzVCLHVCQUF1QjtRQUN2QiwwQkFBMEI7UUFDMUIsZUFBZTtRQUNmLDJEQUEyRDtRQUMzRCxHQUFHO0tBQ04sQ0FBQztJQUVGLGNBQWMsR0FBRyxVQUFFLElBQUksVUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzFDLFlBQVksR0FBRyxVQUFFLElBQUksVUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdkQsWUFBWSxHQUFHLFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6RCxVQUFFLElBQUksVUFBRSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzlELFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEUsVUFBRSxJQUFJLFVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsVUFBRSxJQUFJLFVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsVUFBRSxJQUFJLFVBQUUsQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3BELFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNwRCxVQUFFLElBQUksVUFBRSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVyQyxtQkFBbUIsR0FBRyxVQUFFLElBQUksVUFBRSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM3RSx1QkFBdUIsR0FBRyxVQUFFLElBQUksVUFBRSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNqRix3QkFBd0IsR0FBRyxVQUFFLElBQUksVUFBRSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkYsa0JBQWtCLEdBQUcsVUFBRSxJQUFJLFVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNFLHFCQUFxQixHQUFHLFVBQUUsSUFBSSxVQUFFLENBQUMsaUJBQWlCLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVqRixXQUFXLEdBQUcsVUFBRSxJQUFJLFVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxnQkFBZ0IsR0FBRyxVQUFFLElBQUksVUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRTNDLGdCQUFnQjtJQUNoQiw2QkFBNkI7SUFDN0IsOEJBQThCO0lBQzlCLDRFQUE0RTtJQUM1RSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBRyxnSEFBZ0g7SUFDbkwsdUVBQXVFO0lBRXZFLHdCQUF3QjtJQUN4QixhQUFhLEdBQUcsVUFBRSxJQUFJLFVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxVQUFFLElBQUksVUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFFLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ25ELFVBQUUsSUFBSSxVQUFFLENBQUMsYUFBYSxDQUFDLFVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBRSxDQUFDLGtCQUFrQixFQUFFLFVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RSxVQUFFLElBQUksVUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFFLENBQUMsVUFBVSxFQUFFLFVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxVQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEUsVUFBRSxJQUFJLFVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsVUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxVQUFFLENBQUMsSUFBSSxFQUFFLFVBQUUsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFcEcsdUJBQXVCO0lBQ3ZCLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLGFBQWEsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUNqRCxpREFBaUQ7SUFFakQsNkVBQTZFO0lBQzdFLDZCQUE2QjtJQUM3QiwyQkFBMkI7SUFFM0IsNEJBQTRCO0lBQzVCLFVBQUUsSUFBSSxZQUFZLElBQUksVUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFFLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ2xFLFVBQUUsSUFBSSxpQkFBaUIsSUFBSSxVQUFFLENBQUMsVUFBVSxDQUFDLFVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBRXJGLG9KQUFvSjtJQUNwSiw2TUFBNk07SUFDN00sdUtBQXVLO0lBQ3ZLLDBDQUEwQztBQUM5QyxDQUFDO0FBMU5ELG9CQTBOQztBQUVEO0lBQ0ksTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBRWxDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUN0QixVQUFFLElBQUksVUFBRSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFFNUQsVUFBRSxJQUFJLFVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUM7SUFBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQ3ZELFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7SUFFakUsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQzNCLHVCQUF1QixHQUFHLElBQUksQ0FBQztJQUMvQix3QkFBd0IsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5QixrQkFBa0IsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN4QixxQkFBcUIsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUUzQixVQUFFLElBQUksVUFBRSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFDOUQsVUFBRSxJQUFJLFVBQUUsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3pELFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztBQUM3RCxDQUFDO0FBbEJELDRCQWtCQztBQUVELGtCQUF5QixJQUFZO0lBQ2pDLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxNQUFNLENBQUMsR0FBVyxVQUFFLElBQUksVUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDO0lBQy9DLE1BQU0sQ0FBQyxHQUFXLFVBQUUsSUFBSSxVQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUM7SUFDaEQsTUFBTSxTQUFTLEdBQVcsVUFBRSxJQUFJLFVBQUUsQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLENBQUM7SUFDM0QsTUFBTSxTQUFTLEdBQVcsVUFBRSxJQUFJLFVBQUUsQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLENBQUM7SUFDNUQsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyQixFQUFFLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTNELElBQUksRUFBRSxHQUFXLElBQUksR0FBRyxTQUFTLENBQUM7SUFDbEMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUNqQixFQUFFLENBQUMsU0FBUyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFFekIsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQzNDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQzFCLENBQUM7SUFDRCxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSx3QkFBOEIsQ0FBQyxDQUM5QyxDQUFDO1FBQ0csd0JBQXdCO1FBQ3hCLE1BQU0sUUFBUSxHQUFjLE9BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxXQUFXLElBQUksT0FBTSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzdJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sT0FBTyxHQUFZLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQUMsUUFBUSxDQUFDO1lBQUMsQ0FBQztZQUMzQixNQUFNLGFBQWEsR0FBVyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUNyRCxNQUFNLFVBQVUsR0FBVyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMvQyxvQkFBb0IsTUFBYyxFQUFFLFNBQWlCO2dCQUNqRCxFQUFFLENBQUMsQ0FBQyxhQUFhLEdBQUcsU0FBUyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDO29CQUNoRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQztZQUNuQyxDQUFDO1lBQ0Qsb0JBQW9CLE1BQWMsRUFBRSxPQUFlLEVBQUUsRUFBVSxFQUFFLEVBQVU7Z0JBQ3ZFLElBQUksQ0FBQyxHQUFXLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ25FLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDekIsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztvQkFBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO2dCQUNyQixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFBQyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzRCxDQUFDO1lBQ0QsaURBQWlEO1lBQ2pELGlFQUFpRTtZQUNqRSx5REFBeUQ7WUFDekQsMERBQTBEO1lBQzFELDBEQUEwRDtZQUMxRCw0REFBNEQ7WUFDNUQsc0VBQXNFO1lBQ3RFLHVFQUF1RTtZQUN2RSxvRUFBb0U7WUFDcEUsc0VBQXNFO1lBQ3RFLHVEQUF1RDtZQUN2RCx1REFBdUQ7WUFDdkQsdURBQXVEO1lBQ3ZELHVEQUF1RDtZQUN2RCx3REFBd0Q7WUFDeEQsd0RBQXdEO1lBQ3hELHdEQUF3RDtZQUN4RCx3REFBd0Q7WUFDeEQsMEVBQTBFO1lBQzFFLFVBQVUsbUJBQTRCLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWTtZQUN0RCxVQUFVLGlCQUE0QixDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWE7WUFDdkQsVUFBVSxlQUE0QixDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWE7WUFDdkQsVUFBVSxnQkFBNEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlO1lBQ3pELFVBQVUsbUJBQTRCLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYTtZQUN4RCxVQUFVLG9CQUE0QixFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWM7WUFDekQsVUFBVSxpQkFBNEIsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXO1lBQ3RELFVBQVUsbUJBQTRCLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYTtZQUN4RCxVQUFVLHFCQUE0QixDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVU7WUFDcEQsVUFBVSxxQkFBNEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVO1lBQ3BELFVBQVUscUJBQTRCLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVTtZQUNoRSxVQUFVLHFCQUE0QixDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVU7WUFDaEUsVUFBVSxxQkFBNEIsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckQsVUFBVSxzQkFBNEIsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckQsVUFBVSxvQkFBNEIsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckQsVUFBVSxzQkFBNEIsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckQsdUZBQXVGO1lBQ3ZGLG9FQUFvRTtRQUN4RSxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNyQixDQUFDO0FBcEZELDRCQW9GQztBQUVEO0lBQ0ksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBRWpCLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUNuQixDQUFDO0FBSkQsNEJBSUM7QUFFRCx5QkFBZ0MsWUFBK0IsS0FBSyxDQUFDLFdBQVcsRUFBRTtJQUM5RSxNQUFNLEVBQUUsR0FBWSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDbEMsRUFBRSxDQUFDLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7UUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7SUFBQyxDQUFDO0lBRTlDLFVBQUUsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTdCLHdIQUF3SDtJQUN4SCxNQUFNLFFBQVEsR0FBVyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLE1BQU0sU0FBUyxHQUFXLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUM7SUFDMUUsRUFBRSxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxTQUFTLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQyxNQUFNLENBQUM7SUFDWCxDQUFDO0lBQ0QsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUVyRCxrQkFBa0I7SUFDbEIsTUFBTSxZQUFZLEdBQXdCLFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDNUYsTUFBTSxZQUFZLEdBQXdCLFVBQUUsSUFBSSxVQUFFLENBQUMsWUFBWSxDQUFDLFVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUMvRixNQUFNLGlCQUFpQixHQUF1QixVQUFFLElBQUksVUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFFLENBQUMsb0JBQW9CLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDckcsTUFBTSx5QkFBeUIsR0FBdUIsVUFBRSxJQUFJLFVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBRSxDQUFDLDRCQUE0QixDQUFDLElBQUksSUFBSSxDQUFDO0lBRXJILGlHQUFpRztJQUNqRyxVQUFFLElBQUksVUFBRSxDQUFDLE1BQU0sQ0FBQyxVQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsVUFBRSxJQUFJLFVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BDLFVBQUUsSUFBSSxVQUFFLENBQUMsU0FBUyxDQUFDLFVBQUUsQ0FBQyxTQUFTLEVBQUUsVUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDekQsVUFBRSxJQUFJLFVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9CLFVBQUUsSUFBSSxVQUFFLENBQUMsT0FBTyxDQUFDLFVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoQyxVQUFFLElBQUksVUFBRSxDQUFDLE1BQU0sQ0FBQyxVQUFFLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDakMsVUFBRSxJQUFJLFVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXBDLHVDQUF1QztJQUN2QyxNQUFNLGdCQUFnQixHQUFpQixJQUFJLFlBQVksQ0FBQztRQUNwRCxHQUFHLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO1FBQ3JDLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRztRQUN0QyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUc7UUFDbkIsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0tBQ3RCLENBQUMsQ0FBQztJQUNILFVBQUUsSUFBSSxVQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3BDLFVBQUUsSUFBSSxVQUFFLENBQUMsU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNDLFVBQUUsSUFBSSx1QkFBdUIsSUFBSSxVQUFFLENBQUMsZ0JBQWdCLENBQUMsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFFdkcsdUJBQXVCO0lBQ3ZCLFVBQUUsSUFBSSxVQUFFLENBQUMsVUFBVSxDQUFDLFVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDbEQsVUFBRSxJQUFJLFVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzNELFVBQUUsSUFBSSxVQUFFLENBQUMsdUJBQXVCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxVQUFFLElBQUksVUFBRSxDQUFDLHVCQUF1QixDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFeEQsVUFBRSxJQUFJLFVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLEVBQUUsVUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUM1SCxVQUFFLElBQUksVUFBRSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLENBQUMsRUFBRSxVQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3JILFVBQUUsSUFBSSxVQUFFLENBQUMsbUJBQW1CLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxFQUFFLFVBQUUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFaEksTUFBTSxRQUFRLEdBQVcsVUFBRSxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxVQUFFLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXhHLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFNBQXFCLEVBQVEsRUFBRTtRQUN2RCxVQUFFLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QixVQUFFLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxTQUFTLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xFLFVBQUUsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbEUsVUFBRSxJQUFJLFVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNsRCxVQUFFLElBQUksVUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFFLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxTQUFTLEVBQUUsVUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFFLFVBQUUsSUFBSSxVQUFFLENBQUMsVUFBVSxDQUFDLFVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQy9ELFVBQUUsSUFBSSxVQUFFLENBQUMsVUFBVSxDQUFDLFVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxTQUFTLENBQUMsU0FBUyxFQUFFLFVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVsRixJQUFJLFNBQVMsR0FBVyxDQUFDLENBQUM7UUFFMUIsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQW1CLEVBQVEsRUFBRTtZQUNwRCxVQUFFLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM1QixVQUFFLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ25ELFVBQUUsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxTQUFTLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMxSyxVQUFFLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ25ELEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDTixPQUFPLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUM7Z0JBQzVDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ3ZELE1BQU0sSUFBSSxHQUFxQixJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztvQkFDM0ksT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDckwsQ0FBQztZQUNMLENBQUM7WUFFRCxVQUFFLElBQUksVUFBRSxDQUFDLFdBQVcsQ0FBQyxVQUFFLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN4RCxVQUFFLElBQUksVUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxTQUFTLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM3SixVQUFFLElBQUksVUFBRSxDQUFDLFlBQVksQ0FBQyxVQUFFLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7WUFFbkcsU0FBUyxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDLENBQUMsQ0FBQztJQUVILHlCQUF5QjtJQUN6QixVQUFFLElBQUksVUFBRSxDQUFDLHdCQUF3QixDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUQsVUFBRSxJQUFJLFVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3RELFVBQUUsSUFBSSxVQUFFLENBQUMsd0JBQXdCLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN6RCxVQUFFLElBQUksWUFBWSxJQUFJLFVBQUUsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEQsVUFBRSxJQUFJLFlBQVksSUFBSSxVQUFFLENBQUMsV0FBVyxDQUFDLFVBQUUsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDbEUsVUFBRSxJQUFJLGlCQUFpQixJQUFJLFVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBRSxDQUFDLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzdFLFVBQUUsSUFBSSx5QkFBeUIsSUFBSSxVQUFFLENBQUMsVUFBVSxDQUFDLFVBQUUsQ0FBQyxvQkFBb0IsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO0lBQ3JHLFVBQUUsSUFBSSxVQUFFLENBQUMsT0FBTyxDQUFDLFVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBOUZELDBDQThGQyJ9 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAAQAIAAEADAACwAAAAkAMAACAAAABAAAAAQAMAAKAAAACQAwAAkAMAAEADAACwAAAAIAAAACAAAACwAAAAoAAAAEAAAABAAAAAQAAAACgBAACwAwAAsAMAALADAACwAwAAKAEAADgBAACwAwAAsAMAADgBAACQDgAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAD65AAAAAQAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACv////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAOAAAUDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAIAAAAC6QAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAMADAADABAAAwAUAAMAGAADABwAAwAgAAMAJAADACgAAwAsAAMAMAADADQAAwA4AAMAPAADAEAAAwBEAAMASAADAEwAAwBQAAMAVAADAFgAAwBcAAMAYAADAGQAAwBoAAMAbAADAHAAAwB0AAMAeAADAHwAAwAAAALMBAADDAgAAwwMAAMMEAADDBQAAwwYAAMMHAADDCAAAwwkAAMMKAADDCwAAwwwAAMMNAADTDgAAww8AAMMAAAy7AQAMwwIADMMDAAzDBAAM0wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvDwEAAAAAAAAA2AIAAAEAAAACAAAAAwAAAAQAAAAFAAAAAQAAAAEAAAABAAAAAAAAAAADAAABAAAABQAAAAMAAAAEAAAABQAAAAIAAAACAAAAAgAAAAAAAAAwAwAAAQAAAAYAAAADAAAABAAAAAYAAAAAAAAAIAMAAAEAAAAHAAAAAwAAAAQAAAAHAAAAAAAAAMADAAABAAAACAAAAAMAAAAEAAAABQAAAAMAAAADAAAAAwAAACAA/wAAAGltZ3VpLmluaQBpbWd1aV9sb2cudHh0AGZpbGVuYW1lICYmIGZpbGVfb3Blbl9tb2RlAGltZ3VpL2ltZ3VpLmNwcABJbUZpbGVMb2FkVG9NZW1vcnkAQ291bnQgPD0gKChpbnQpKHNpemVvZihQb3MpL3NpemVvZigqUG9zKSkpAFVwZGF0ZQBpdGVtc19oZWlnaHQgPiAwLjBmAERpc3BsYXlTdGFydCA+PSAwICYmIERpc3BsYXlFbmQgPj0gMAAjTU9WRQAoZmxhZ3MgJiAoSW1HdWlIb3ZlcmVkRmxhZ3NfUm9vdFdpbmRvdyB8IEltR3VpSG92ZXJlZEZsYWdzX0NoaWxkV2luZG93cykpID09IDAAZy5JTy5EZWx0YVRpbWUgPj0gMC4wZiAmJiAiTmVlZCBhIHBvc2l0aXZlIERlbHRhVGltZSAoemVybyBpcyB0b2xlcmF0ZWQgYnV0IHdpbGwgY2F1c2Ugc29tZSB0aW1pbmcgaXNzdWVzKSIAZy5JTy5EaXNwbGF5U2l6ZS54ID49IDAuMGYgJiYgZy5JTy5EaXNwbGF5U2l6ZS55ID49IDAuMGYgJiYgIkludmFsaWQgRGlzcGxheVNpemUgdmFsdWUiAGcuSU8uRm9udHMtPkZvbnRzLlNpemUgPiAwICYmICJGb250IEF0bGFzIG5vdCBjcmVhdGVkLiBEaWQgeW91IGNhbGwgaW8uRm9udHMtPkdldFRleERhdGFBc1JHQkEzMiAvIEdldFRleERhdGFBc0FscGhhOCA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,SBMAADyMAAAAAAAAAQAAACAAAAAAAAAAwBIAAHuMAADAEgAApYwAAMASAADhjAAAwBIAAO2MAAAsEwAABI0AAAgAAABQAAAAwBIAAByNAAAsEwAAM40AAAAAAABoAAAAwBIAAEGNAAAsEwAAAo8AAAAAAACAAAAAwBIAAB+PAAAsEwAAkI8AAAAAAACYAAAAwBIAAJmPAAAsEwAAoY8AAAEAAAAwAAAALBMAALCQAAAAAAAAwAAAAMASAADJkAAALBMAAOiQAAAAAAAA2AAAAMASAAD2kAAALBMAAAaRAAAAAAAA8AAAAMASAAAUkQAALBMAACGRAAAAAAAACAEAAMASAAArkQAALBMAADSRAAAIAAAAIAEAAMASAABEkQAAwBIAAGCRAAAsEwAAcpEAAAEAAAAoAQAALBMAAISRAAAAAAAAKAEAACwTAACpkwAAAAAAADAAAAAsEwAAspMAAAAAAAA4AAAALBMAALuTAAABAAAA2AAAACwTAAC9lQAAAQAAAAgBAAAsEwAAyJUAAAEAAAA4AAAALBMAAN2VAAAAAAAAsAEAAMASAADslQAALBMAAD6WAAABAAAAsAEAAMASAABilgAALBMAAJ+WAAABAAAAmAAAACwTAAAElwAAAQAAAPAAAAAsEwAAE5cAAAEAAABoAAAAwBIAAHiYAAAsEwAAtJgAAAEAAAAYAgAAwBIAAMGYAAAsEwAA9pgAAAAAAAAYAgAALBMAAFiZAAAAAAAAQAIAAMASAABsmQAALBMAAIWZAAABAAAAQAIAACwTAADVmQAAAQAAAMAAAAAsEwAAqpoAAAEAAACAAAAAwBIAAFqdAADAEgAAmZ0AAMASAADXnQAAwBIAAB2eAADAEgAAWp4AAMASAAB5ngAAwBIAAJieAADAEgAAt54AAMASAADWngAAwBIAAPWeAABIEwAAMp8AAAAAAAABAAAAIAAAAAAAAABIEwAAcZ8AAAAAAAABAAAAIAAAAAAAAADAEgAAN6sAAOgSAACXqwAAEAMAAAAAAADoEgAARKsAACADAAAAAAAAwBIAAGWrAADoEgAAcqsAAAADAAAAAAAA6BIAAJ2sAAAQAwAAAAAAAOgSAAB5rAAAOAMAAAAAAADoEgAAv6wAABADAAAAAAAAEBMAAOesAAAsEwAA6awAAAAAAABoAwAAEBMAAOysAAAQEwAA76wAABATAADxrAAAEBMAAPOsAAAQEwAA9awAABATAAD3rAAAEBMAAPmsAAAQEwAA+6wAABATAAD9rAAAEBMAAP+sAAAQEwAAAa0AABATAAADrQAAEBMAAAWtAADoEgAAB60AAAADAAAAAAAAAACAPwAAgD8AAIC/AACAvwAAAAADAAAAAAAAAAAAgD8AAIA/AACAvwMAAAAGAAAAAAAAAAAAAAAAAIA/AACAPwYAAAAJAAAAAACAPwAAAAAAAIC/AACAPwkAAAAMAAAAgScAAIUnAACJJwAAjScAAJEnAACRJwAAkScAAJEnAACXJwAAnycAAKcnAACvJwAAtycAAL8nAADHJwAArycAAM8nAADPJwAAzycAAM8nAADVJwAA3ScAAOUnAADtJwAA9ScAAP0nAAAFKAAA7ScAAP8AAP///wD/AP8A/wD///8AAP///wD///8AAP/TLAAA2CwAAN4sAADiLAAA7SwAAAMAAAABAAAAAAAAAAIAAAABAAAAAwAAAAIAAAAAAAAAAQAAAAAAAAACAAAABAAAAAEAAAAMAAAAAQAAABAAAAACAAAAFAAAAAIAAAAcAAAAAQAAACQAAAABAAAAKAAAAAEAAAAsAAAAAQAAADAAAAACAAAANAAAAAEAAAA8AAAAAQAAAEAAAAACAAAARAAAAAIAAABMAAAAAQAAAFwAAAABAAAAZAAAAAEAAABoAAAAAQAAAGwAAAABAAAAcAAAAAIAAAB0AAAAAACAP83MzD0K1yM8bxKDOhe30TisxSc3vTeGNZW/1jN3zCsyX3CJMAAAAAAAAEBAAABAQQAAmEEAAAAAAAAAAAAAUEEAAAAAAADgQAAAgEEAAIBAAAAAQQAA+EEAAAAAAAC4QQAAuEEAADBBAAAwQQAAqEEAAAAAAAAQQQAAuEEAAKBAAAAwQQAAXEIAAJBBAAC4QQAAEEEAADBBAACgQAAAkkIAAAAAAACIQQAAiEEAABBBAAAQQQAAXEIAAAAAAACIQQAAiEEAABBBAAAQQQgAAABwAwAAKAAAAMADAAAoAAAAuAMAANgDAAAoAAAAiAMAACgAAADYAwAAiAMAACgAAAAoAAAAiAMAAIgDAAC4AwAA2AMAALgDAAC4AwAA2AMAANgDAACIAwAAuAMAAIgDAAC4AwAAuAMAAGgDAADYAwAA2AMAANgDAAAoAAAAKAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/imgui b/imgui index e916310..41ecebf 160000 --- a/imgui +++ b/imgui @@ -1 +1 @@ -Subproject commit e916310b2e1f9cacbb2b9ce192a3dfb359e4b509 +Subproject commit 41ecebff5a63b1fa71ad0d1ef6f1e6d3d39ef07d diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAAKAAAAMADAADYAwAAuAMAAGgDAABoAAAAKAAAACgAAADAAwAA2AMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAAMADAADYAwAAaAMAAFgAAABoAwAAaAAAACgAAAAoAAAAiAMAAGgDAADwAQAAKAAAACgAAAAIAgAAaAMAADACAABoAwAAMAIAALgDAADYAwAAiAMAADACAAAwAgAAuAMAANgDAAAwAgAAuAMAADACAAAoAAAAwAAAALAAAACIAwAAaAIAAGgDAACAAAAAuAMAAAgAAAAoAAAAaAMAAHAAAAC4AwAAuAMAAGgDAACAAAAACAAAAAgAAACAAAAAcAAAACgAAAAoAAAAKAAAAFABAADYAwAA2AMAANgDAADYAwAAUAEAAGABAADYAwAA2AMAAGABAABQDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAABKtAAAAAQAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACv////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAPAADUDwAABQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAIAAABSuAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAMADAADABAAAwAUAAMAGAADABwAAwAgAAMAJAADACgAAwAsAAMAMAADADQAAwA4AAMAPAADAEAAAwBEAAMASAADAEwAAwBQAAMAVAADAFgAAwBcAAMAYAADAGQAAwBoAAMAbAADAHAAAwB0AAMAeAADAHwAAwAAAALMBAADDAgAAwwMAAMMEAADDBQAAwwYAAMMHAADDCAAAwwkAAMMKAADDCwAAwwwAAMMNAADTDgAAww8AAMMAAAy7AQAMwwIADMMDAAzDBAAM0wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QVfcIkA/wkvDwEAAAAAAAAAAAMAAAEAAAACAAAAAwAAAAQAAAAFAAAAAQAAAAEAAAABAAAAAAAAACgDAAABAAAABQAAAAMAAAAEAAAABQAAAAIAAAACAAAAAgAAAAAAAABYAwAAAQAAAAYAAAADAAAABAAAAAYAAAAAAAAASAMAAAEAAAAHAAAAAwAAAAQAAAAHAAAAAAAAAOgDAAABAAAACAAAAAMAAAAEAAAABQAAAAMAAAADAAAAAwAAACAA/wAAAGltZ3VpLmluaQBpbWd1aV9sb2cudHh0AGZpbGVuYW1lICYmIGZpbGVfb3Blbl9tb2RlAGltZ3VpL2ltZ3VpLmNwcABJbUZpbGVMb2FkVG9NZW1vcnkAQ291bnQgPD0gKChpbnQpKHNpemVvZihQb3MpL3NpemVvZigqUG9zKSkpAFVwZGF0ZQBpdGVtc19oZWlnaHQgPiAwLjBmAERpc3BsYXlTdGFydCA+PSAwICYmIERpc3BsYXlFbmQgPj0gMAAjTU9WRQBpZCAhPSAwAFNldEZvY3VzSUQAKGZsYWdzICYgKEltR3VpSG92ZXJlZEZsYWdzX1Jvb3RXaW5kb3cgfCBJbUd1aUhvdmVyZWRGbGFnc19DaGlsZFdpbmRvd3MpKSA9PSAwAEdJbUd1aSAhPSAwTCAmJiAiTm8gY3VycmVudCBjb250ZXh0LiBEaWQgeW91IGNhbGwgSW1HdWk6OkNyZWF0ZUNvbnRleHQoKSBvciBJbUd1aTo6U2V0Q3VycmVudENvbnRleHQoKT8iAHdpbmRvdyA9PSBnLk5hdldpbmRvdwBOYXZJbml0V2luZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/imgui b/imgui index e916310..41ecebf 160000 --- a/imgui +++ b/imgui @@ -1 +1 @@ -Subproject commit e916310b2e1f9cacbb2b9ce192a3dfb359e4b509 +Subproject commit 41ecebff5a63b1fa71ad0d1ef6f1e6d3d39ef07d diff --git a/imgui.js b/imgui.js index 0fc91d6..686abff 100644 --- a/imgui.js +++ b/imgui.js @@ -129,7 +129,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -272,7 +272,7 @@ exports.ImGuiTextBuffer = ImGuiTextBuffer; // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -420,7 +420,7 @@ exports.ImGuiTextEditCallbackData = ImGuiTextEditCallbackData; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -class ImGuiSizeConstraintCallbackData { +class ImGuiSizeCallbackData { constructor(native) { this.native = native; } @@ -433,7 +433,7 @@ get CurrentSize() { return this.native.getCurrentSize(); } get DesiredSize() { return this.native.getDesiredSize(); } } -exports.ImGuiSizeConstraintCallbackData = ImGuiSizeConstraintCallbackData; +exports.ImGuiSizeCallbackData = ImGuiSizeCallbackData; class ImGuiListClipper { get StartPosY() { return this.native.StartPosY; } get ItemsHeight() { return this.native.ItemsHeight; } @@ -524,7 +524,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif // Draw channels are used by the Columns API to "split" the render list into different channels while building, so items of each column can be batched together. @@ -681,6 +681,8 @@ class ImFontGlyph { } exports.ImFontGlyph = ImFontGlyph; +var bind_imgui_9 = require("./bind-imgui"); +exports.ImFontAtlasFlags = bind_imgui_9.ImFontAtlasFlags; // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -707,7 +709,7 @@ // IMGUI_API void Clear(); // Clear all // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -815,36 +817,37 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle { constructor() { - this.Alpha = 1.0; // Global alpha applies to everything in ImGui - this.WindowPadding = new ImVec2(8, 8); // Padding within a window - this.WindowRounding = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - this.WindowBorderSize = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.WindowMinSize = new ImVec2(32, 32); // Minimum window size - this.WindowTitleAlign = new ImVec2(0.0, 0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. - this.ChildRounding = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - this.ChildBorderSize = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.PopupRounding = 0.0; // Radius of popup window corners rounding. - this.PopupBorderSize = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.FramePadding = new ImVec2(4, 3); // Padding within a framed rectangle (used by most widgets) - this.FrameRounding = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - this.FrameBorderSize = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.ItemSpacing = new ImVec2(8, 4); // Horizontal and vertical spacing between widgets/lines - this.ItemInnerSpacing = new ImVec2(4, 4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) - this.TouchExtraPadding = new ImVec2(0, 0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! - this.IndentSpacing = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - this.ColumnsMinSpacing = 6.0; // Minimum horizontal spacing between two columns - this.ScrollbarSize = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - this.ScrollbarRounding = 9.0; // Radius of grab corners for scrollbar - this.GrabMinSize = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - this.GrabRounding = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - this.ButtonTextAlign = new ImVec2(0.5, 0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. - this.DisplayWindowPadding = new ImVec2(22, 22); // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. - this.DisplaySafeAreaPadding = new ImVec2(4, 4); // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. - this.AntiAliasedLines = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - this.AntiAliasedFill = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - this.CurveTessellationTol = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + this.Alpha = 1.0; + this.WindowPadding = new ImVec2(8, 8); + this.WindowRounding = 7.0; + this.WindowBorderSize = 0.0; + this.WindowMinSize = new ImVec2(32, 32); + this.WindowTitleAlign = new ImVec2(0.0, 0.5); + this.ChildRounding = 0.0; + this.ChildBorderSize = 1.0; + this.PopupRounding = 0.0; + this.PopupBorderSize = 1.0; + this.FramePadding = new ImVec2(4, 3); + this.FrameRounding = 0.0; + this.FrameBorderSize = 0.0; + this.ItemSpacing = new ImVec2(8, 4); + this.ItemInnerSpacing = new ImVec2(4, 4); + this.TouchExtraPadding = new ImVec2(0, 0); + this.IndentSpacing = 21.0; + this.ColumnsMinSpacing = 6.0; + this.ScrollbarSize = 16.0; + this.ScrollbarRounding = 9.0; + this.GrabMinSize = 10.0; + this.GrabRounding = 0.0; + this.ButtonTextAlign = new ImVec2(0.5, 0.5); + this.DisplayWindowPadding = new ImVec2(22, 22); + this.DisplaySafeAreaPadding = new ImVec2(4, 4); + this.MouseCursorScale = 1; + this.AntiAliasedLines = true; + this.AntiAliasedFill = true; + this.CurveTessellationTol = 1.25; this.Colors = []; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i] = new ImVec4(); } const _this = new ImGuiStyle(this); @@ -883,7 +886,7 @@ this.Colors = new Proxy([], { get: (target, key) => { if (key === "length") { - return 43 /* COUNT */; + return 45 /* COUNT */; } return this.internal.getColorsAt(Number(key)); }, @@ -932,6 +935,8 @@ get ButtonTextAlign() { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding() { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding() { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale() { return this.internal.MouseCursorScale; } + set MouseCursorScale(value) { this.internal.MouseCursorScale = value; } get AntiAliasedLines() { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill() { return this.internal.AntiAliasedFill; } @@ -964,10 +969,11 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i].Copy(other.Colors[i]); } return this; @@ -980,9 +986,6 @@ class ImGuiIO { constructor(native) { this.native = native; - // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. - // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. - // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -990,7 +993,7 @@ this.KeyMap = new Proxy([], { get: (target, key) => { if (key === "length") { - return 19 /* COUNT */; + return 21 /* COUNT */; } return this.native.getKeyMapAt(Number(key)); }, @@ -1022,11 +1025,33 @@ return this.native.setKeysDownAt(Number(key), value); } }); + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + this.NavInputs = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target, key, value) => { + return this.native.setNavInputsAt(Number(key), value); + } + }); //------------------------------------------------------------------ // [Internal] ImGui will maintain those fields. Forward compatibility not guaranteed! //------------------------------------------------------------------ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + this.MouseClickedPos = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 5; + } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1053,6 +1078,16 @@ return this.native.getKeysDownDurationAt(Number(key)); } }); + // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + this.NavInputsDownDuration = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); } //------------------------------------------------------------------ // Settings (fill once) // Default value: @@ -1062,6 +1097,12 @@ // float DeltaTime; // = 1.0f/60.0f // Time elapsed since last frame, in seconds. get DeltaTime() { return this.native.DeltaTime; } set DeltaTime(value) { this.native.DeltaTime = value; } + // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. + // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. + // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags() { return this.native.NavFlags; } + set NavFlags(value) { this.native.NavFlags = value; } // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). // float KeyRepeatRate; // = 0.050f // When holding a key/button, rate at which it repeats, in seconds. // void* UserData; // = NULL // Store your own data for retrieval by callbacks. @@ -1110,6 +1151,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. get MouseWheel() { return this.native.MouseWheel; } set MouseWheel(value) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + get MouseWheelH() { return this.native.MouseWheelH; } + set MouseWheelH(value) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor() { return this.native.MouseDrawCursor; } set MouseDrawCursor(value) { this.native.MouseDrawCursor = value; } @@ -1125,7 +1169,6 @@ // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows get KeySuper() { return this.native.KeySuper; } set KeySuper(value) { this.native.KeySuper = value; } - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] AddInputCharacter(c) { this.native.AddInputCharacter(c); } @@ -1134,7 +1177,7 @@ //------------------------------------------------------------------ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse() { return this.native.WantCaptureMouse; } set WantCaptureMouse(value) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. @@ -1146,6 +1189,12 @@ // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse() { return this.native.WantMoveMouse; } set WantMoveMouse(value) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive() { return this.native.NavActive; } + set NavActive(value) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible() { return this.native.NavVisible; } + set NavVisible(value) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate() { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1156,6 +1205,25 @@ get MouseDelta() { return this.native.getMouseDelta(); } } exports.ImGuiIO = ImGuiIO; +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +function CreateContext(shared_font_atlas = null) { + return bind.CreateContext(); +} +exports.CreateContext = CreateContext; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +function DestroyContext(ctx = null) { + return bind.DestroyContext(ctx); +} +exports.DestroyContext = DestroyContext; +// IMGUI_API ImGuiContext* GetCurrentContext(); +var bind_imgui_10 = require("./bind-imgui"); +exports.GetCurrentContext = bind_imgui_10.GetCurrentContext; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +var bind_imgui_11 = require("./bind-imgui"); +exports.SetCurrentContext = bind_imgui_11.SetCurrentContext; // Main // IMGUI_API ImGuiIO& GetIO(); function GetIO() { return new ImGuiIO(bind.GetIO()); } @@ -1187,9 +1255,6 @@ // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! function EndFrame() { bind.EndFrame(); } exports.EndFrame = EndFrame; -// IMGUI_API void Shutdown(); -function Shutdown() { bind.Shutdown(); } -exports.Shutdown = Shutdown; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! function ShowDemoWindow(p_open = null) { bind.ShowDemoWindow(p_open); } @@ -1237,6 +1302,64 @@ // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). function ShowUserGuide() { bind.ShowUserGuide(); } exports.ShowUserGuide = ShowUserGuide; +// IMGUI_API const char* GetVersion(); +var bind_imgui_12 = require("./bind-imgui"); +exports.GetVersion = bind_imgui_12.GetVersion; +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +function StyleColorsClassic(dst = null) { + if (dst === null) { + bind.StyleColorsClassic(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsClassic = StyleColorsClassic; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +function StyleColorsDark(dst = null) { + if (dst === null) { + bind.StyleColorsDark(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsDark = StyleColorsDark; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +function StyleColorsLight(dst = null) { + if (dst === null) { + bind.StyleColorsLight(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsLight = StyleColorsLight; // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). function Begin(name, open = null, flags = 0) { @@ -1255,8 +1378,8 @@ } exports.Begin = Begin; // IMGUI_API void End(); // finish appending to current window, pop it off the window stack. -var bind_imgui_9 = require("./bind-imgui"); -exports.End = bind_imgui_9.End; +var bind_imgui_13 = require("./bind-imgui"); +exports.End = bind_imgui_13.End; // IMGUI_API bool BeginChild(const char* str_id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // begin a scrolling region. size==0.0f: use remaining window size, size<0.0f: use remaining window size minus abs(size). size>0.0f: fixed size. each axis can use a different mode, e.g. ImVec2(0,400). // IMGUI_API bool BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // " function BeginChild(id, size = ImVec2.ZERO, border = false, extra_flags = 0) { @@ -1279,8 +1402,8 @@ } exports.GetContentRegionAvail = GetContentRegionAvail; // IMGUI_API float GetContentRegionAvailWidth(); // -var bind_imgui_10 = require("./bind-imgui"); -exports.GetContentRegionAvailWidth = bind_imgui_10.GetContentRegionAvailWidth; +var bind_imgui_14 = require("./bind-imgui"); +exports.GetContentRegionAvailWidth = bind_imgui_14.GetContentRegionAvailWidth; // IMGUI_API ImVec2 GetWindowContentRegionMin(); // content boundaries min (roughly (0,0)-Scroll), in window coordinates function GetWindowContentRegionMin(out = new ImVec2()) { return bind.GetWindowContentRegionMin(out); @@ -1292,8 +1415,8 @@ } exports.GetWindowContentRegionMax = GetWindowContentRegionMax; // IMGUI_API float GetWindowContentRegionWidth(); // -var bind_imgui_11 = require("./bind-imgui"); -exports.GetWindowContentRegionWidth = bind_imgui_11.GetWindowContentRegionWidth; +var bind_imgui_15 = require("./bind-imgui"); +exports.GetWindowContentRegionWidth = bind_imgui_15.GetWindowContentRegionWidth; // IMGUI_API ImDrawList* GetWindowDrawList(); // get rendering command-list if you want to append your own draw primitives function GetWindowDrawList() { return new ImDrawList(bind.GetWindowDrawList()); @@ -1310,20 +1433,20 @@ } exports.GetWindowSize = GetWindowSize; // IMGUI_API float GetWindowWidth(); -var bind_imgui_12 = require("./bind-imgui"); -exports.GetWindowWidth = bind_imgui_12.GetWindowWidth; -// IMGUI_API float GetWindowHeight(); -var bind_imgui_13 = require("./bind-imgui"); -exports.GetWindowHeight = bind_imgui_13.GetWindowHeight; -// IMGUI_API bool IsWindowCollapsed(); -var bind_imgui_14 = require("./bind-imgui"); -exports.IsWindowCollapsed = bind_imgui_14.IsWindowCollapsed; -// IMGUI_API bool IsWindowAppearing(); -var bind_imgui_15 = require("./bind-imgui"); -exports.IsWindowAppearing = bind_imgui_15.IsWindowAppearing; -// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows var bind_imgui_16 = require("./bind-imgui"); -exports.SetWindowFontScale = bind_imgui_16.SetWindowFontScale; +exports.GetWindowWidth = bind_imgui_16.GetWindowWidth; +// IMGUI_API float GetWindowHeight(); +var bind_imgui_17 = require("./bind-imgui"); +exports.GetWindowHeight = bind_imgui_17.GetWindowHeight; +// IMGUI_API bool IsWindowCollapsed(); +var bind_imgui_18 = require("./bind-imgui"); +exports.IsWindowCollapsed = bind_imgui_18.IsWindowCollapsed; +// IMGUI_API bool IsWindowAppearing(); +var bind_imgui_19 = require("./bind-imgui"); +exports.IsWindowAppearing = bind_imgui_19.IsWindowAppearing; +// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows +var bind_imgui_20 = require("./bind-imgui"); +exports.SetWindowFontScale = bind_imgui_20.SetWindowFontScale; // IMGUI_API void SetNextWindowPos(const ImVec2& pos, ImGuiCond cond = 0, const ImVec2& pivot = ImVec2(0,0)); // set next window position. call before Begin(). use pivot=(0.5f,0.5f) to center on given point, etc. function SetNextWindowPos(pos, cond = 0, pivot = ImVec2.ZERO) { bind.SetNextWindowPos(pos, cond, pivot); @@ -1338,7 +1461,7 @@ function SetNextWindowSizeConstraints(size_min, size_max, custom_callback = null, custom_callback_data = null) { if (custom_callback) { function _custom_callback(data) { - const _data = new ImGuiSizeConstraintCallbackData(data); + const _data = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1360,10 +1483,13 @@ } exports.SetNextWindowCollapsed = SetNextWindowCollapsed; // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() -var bind_imgui_17 = require("./bind-imgui"); -exports.SetNextWindowFocus = bind_imgui_17.SetNextWindowFocus; +var bind_imgui_21 = require("./bind-imgui"); +exports.SetNextWindowFocus = bind_imgui_21.SetNextWindowFocus; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +var bind_imgui_22 = require("./bind-imgui"); +exports.SetNextWindowBgAlpha = bind_imgui_22.SetNextWindowBgAlpha; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1408,23 +1534,23 @@ } exports.SetWindowFocus = SetWindowFocus; // IMGUI_API float GetScrollX(); // get scrolling amount [0..GetScrollMaxX()] -var bind_imgui_18 = require("./bind-imgui"); -exports.GetScrollX = bind_imgui_18.GetScrollX; -// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] -var bind_imgui_19 = require("./bind-imgui"); -exports.GetScrollY = bind_imgui_19.GetScrollY; -// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X -var bind_imgui_20 = require("./bind-imgui"); -exports.GetScrollMaxX = bind_imgui_20.GetScrollMaxX; -// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y -var bind_imgui_21 = require("./bind-imgui"); -exports.GetScrollMaxY = bind_imgui_21.GetScrollMaxY; -// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] -var bind_imgui_22 = require("./bind-imgui"); -exports.SetScrollX = bind_imgui_22.SetScrollX; -// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] var bind_imgui_23 = require("./bind-imgui"); -exports.SetScrollY = bind_imgui_23.SetScrollY; +exports.GetScrollX = bind_imgui_23.GetScrollX; +// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] +var bind_imgui_24 = require("./bind-imgui"); +exports.GetScrollY = bind_imgui_24.GetScrollY; +// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X +var bind_imgui_25 = require("./bind-imgui"); +exports.GetScrollMaxX = bind_imgui_25.GetScrollMaxX; +// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y +var bind_imgui_26 = require("./bind-imgui"); +exports.GetScrollMaxY = bind_imgui_26.GetScrollMaxY; +// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] +var bind_imgui_27 = require("./bind-imgui"); +exports.SetScrollX = bind_imgui_27.SetScrollX; +// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] +var bind_imgui_28 = require("./bind-imgui"); +exports.SetScrollY = bind_imgui_28.SetScrollY; // IMGUI_API void SetScrollHere(float center_y_ratio = 0.5f); // adjust scrolling amount to make current cursor position visible. center_y_ratio=0.0: top, 0.5: center, 1.0: bottom. When using to make a "default/current item" visible, consider using SetItemDefaultFocus() instead. function SetScrollHere(center_y_ratio = 0.5) { bind.SetScrollHere(center_y_ratio); @@ -1482,8 +1608,8 @@ } exports.GetFont = GetFont; // IMGUI_API float GetFontSize(); // get current font size (= height in pixels) of current font with current scale applied -var bind_imgui_24 = require("./bind-imgui"); -exports.GetFontSize = bind_imgui_24.GetFontSize; +var bind_imgui_29 = require("./bind-imgui"); +exports.GetFontSize = bind_imgui_29.GetFontSize; // IMGUI_API ImVec2 GetFontTexUvWhitePixel(); // get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API function GetFontTexUvWhitePixel(out = new ImVec2()) { return bind.GetFontTexUvWhitePixel(out); @@ -1498,49 +1624,49 @@ exports.GetColorU32 = GetColorU32; // Parameters stacks (current window) // IMGUI_API void PushItemWidth(float item_width); // width of items for the common item+label case, pixels. 0.0f = default to ~2/3 of windows width, >0.0f: width in pixels, <0.0f align xx pixels to the right of window (so -1.0f always align width to the right side) -var bind_imgui_25 = require("./bind-imgui"); -exports.PushItemWidth = bind_imgui_25.PushItemWidth; +var bind_imgui_30 = require("./bind-imgui"); +exports.PushItemWidth = bind_imgui_30.PushItemWidth; // IMGUI_API void PopItemWidth(); -var bind_imgui_26 = require("./bind-imgui"); -exports.PopItemWidth = bind_imgui_26.PopItemWidth; +var bind_imgui_31 = require("./bind-imgui"); +exports.PopItemWidth = bind_imgui_31.PopItemWidth; // IMGUI_API float CalcItemWidth(); // width of item given pushed settings and current cursor position -var bind_imgui_27 = require("./bind-imgui"); -exports.CalcItemWidth = bind_imgui_27.CalcItemWidth; +var bind_imgui_32 = require("./bind-imgui"); +exports.CalcItemWidth = bind_imgui_32.CalcItemWidth; // IMGUI_API void PushTextWrapPos(float wrap_pos_x = 0.0f); // word-wrapping for Text*() commands. < 0.0f: no wrapping; 0.0f: wrap to end of window (or column); > 0.0f: wrap at 'wrap_pos_x' position in window local space function PushTextWrapPos(wrap_pos_x = 0.0) { bind.PushTextWrapPos(wrap_pos_x); } exports.PushTextWrapPos = PushTextWrapPos; // IMGUI_API void PopTextWrapPos(); -var bind_imgui_28 = require("./bind-imgui"); -exports.PopTextWrapPos = bind_imgui_28.PopTextWrapPos; +var bind_imgui_33 = require("./bind-imgui"); +exports.PopTextWrapPos = bind_imgui_33.PopTextWrapPos; // IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus); // allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets -var bind_imgui_29 = require("./bind-imgui"); -exports.PushAllowKeyboardFocus = bind_imgui_29.PushAllowKeyboardFocus; +var bind_imgui_34 = require("./bind-imgui"); +exports.PushAllowKeyboardFocus = bind_imgui_34.PushAllowKeyboardFocus; // IMGUI_API void PopAllowKeyboardFocus(); -var bind_imgui_30 = require("./bind-imgui"); -exports.PopAllowKeyboardFocus = bind_imgui_30.PopAllowKeyboardFocus; +var bind_imgui_35 = require("./bind-imgui"); +exports.PopAllowKeyboardFocus = bind_imgui_35.PopAllowKeyboardFocus; // IMGUI_API void PushButtonRepeat(bool repeat); // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame. -var bind_imgui_31 = require("./bind-imgui"); -exports.PushButtonRepeat = bind_imgui_31.PushButtonRepeat; +var bind_imgui_36 = require("./bind-imgui"); +exports.PushButtonRepeat = bind_imgui_36.PushButtonRepeat; // IMGUI_API void PopButtonRepeat(); -var bind_imgui_32 = require("./bind-imgui"); -exports.PopButtonRepeat = bind_imgui_32.PopButtonRepeat; +var bind_imgui_37 = require("./bind-imgui"); +exports.PopButtonRepeat = bind_imgui_37.PopButtonRepeat; // Cursor / Layout // IMGUI_API void Separator(); // separator, generally horizontal. inside a menu bar or in horizontal layout mode, this becomes a vertical separator. -var bind_imgui_33 = require("./bind-imgui"); -exports.Separator = bind_imgui_33.Separator; +var bind_imgui_38 = require("./bind-imgui"); +exports.Separator = bind_imgui_38.Separator; // IMGUI_API void SameLine(float pos_x = 0.0f, float spacing_w = -1.0f); // call between widgets or groups to layout them horizontally function SameLine(pos_x = 0.0, spacing_w = -1.0) { bind.SameLine(pos_x, spacing_w); } exports.SameLine = SameLine; // IMGUI_API void NewLine(); // undo a SameLine() -var bind_imgui_34 = require("./bind-imgui"); -exports.NewLine = bind_imgui_34.NewLine; +var bind_imgui_39 = require("./bind-imgui"); +exports.NewLine = bind_imgui_39.NewLine; // IMGUI_API void Spacing(); // add vertical spacing -var bind_imgui_35 = require("./bind-imgui"); -exports.Spacing = bind_imgui_35.Spacing; +var bind_imgui_40 = require("./bind-imgui"); +exports.Spacing = bind_imgui_40.Spacing; // IMGUI_API void Dummy(const ImVec2& size); // add a dummy item of given size function Dummy(size) { bind.Dummy(size); } exports.Dummy = Dummy; @@ -1551,29 +1677,29 @@ function Unindent(indent_w = 0.0) { bind.Unindent(indent_w); } exports.Unindent = Unindent; // IMGUI_API void BeginGroup(); // lock horizontal starting position + capture group bounding box into one "item" (so you can use IsItemHovered() or layout primitives such as SameLine() on whole group, etc.) -var bind_imgui_36 = require("./bind-imgui"); -exports.BeginGroup = bind_imgui_36.BeginGroup; +var bind_imgui_41 = require("./bind-imgui"); +exports.BeginGroup = bind_imgui_41.BeginGroup; // IMGUI_API void EndGroup(); -var bind_imgui_37 = require("./bind-imgui"); -exports.EndGroup = bind_imgui_37.EndGroup; +var bind_imgui_42 = require("./bind-imgui"); +exports.EndGroup = bind_imgui_42.EndGroup; // IMGUI_API ImVec2 GetCursorPos(); // cursor position is relative to window position function GetCursorPos(out = new ImVec2()) { return bind.GetCursorPos(out); } exports.GetCursorPos = GetCursorPos; // IMGUI_API float GetCursorPosX(); // " -var bind_imgui_38 = require("./bind-imgui"); -exports.GetCursorPosX = bind_imgui_38.GetCursorPosX; +var bind_imgui_43 = require("./bind-imgui"); +exports.GetCursorPosX = bind_imgui_43.GetCursorPosX; // IMGUI_API float GetCursorPosY(); // " -var bind_imgui_39 = require("./bind-imgui"); -exports.GetCursorPosY = bind_imgui_39.GetCursorPosY; +var bind_imgui_44 = require("./bind-imgui"); +exports.GetCursorPosY = bind_imgui_44.GetCursorPosY; // IMGUI_API void SetCursorPos(const ImVec2& local_pos); // " function SetCursorPos(local_pos) { bind.SetCursorPos(local_pos); } exports.SetCursorPos = SetCursorPos; // IMGUI_API void SetCursorPosX(float x); // " -var bind_imgui_40 = require("./bind-imgui"); -exports.SetCursorPosX = bind_imgui_40.SetCursorPosX; +var bind_imgui_45 = require("./bind-imgui"); +exports.SetCursorPosX = bind_imgui_45.SetCursorPosX; // IMGUI_API void SetCursorPosY(float y); // " -var bind_imgui_41 = require("./bind-imgui"); -exports.SetCursorPosY = bind_imgui_41.SetCursorPosY; +var bind_imgui_46 = require("./bind-imgui"); +exports.SetCursorPosY = bind_imgui_46.SetCursorPosY; // IMGUI_API ImVec2 GetCursorStartPos(); // initial cursor position function GetCursorStartPos(out = new ImVec2()) { return bind.GetCursorStartPos(out); } exports.GetCursorStartPos = GetCursorStartPos; @@ -1584,20 +1710,20 @@ function SetCursorScreenPos(pos) { bind.SetCursorScreenPos(pos); } exports.SetCursorScreenPos = SetCursorScreenPos; // IMGUI_API void AlignTextToFramePadding(); // vertically align/lower upcoming text to FramePadding.y so that it will aligns to upcoming widgets (call if you have text on a line before regular widgets) -var bind_imgui_42 = require("./bind-imgui"); -exports.AlignTextToFramePadding = bind_imgui_42.AlignTextToFramePadding; +var bind_imgui_47 = require("./bind-imgui"); +exports.AlignTextToFramePadding = bind_imgui_47.AlignTextToFramePadding; // IMGUI_API float GetTextLineHeight(); // ~ FontSize -var bind_imgui_43 = require("./bind-imgui"); -exports.GetTextLineHeight = bind_imgui_43.GetTextLineHeight; +var bind_imgui_48 = require("./bind-imgui"); +exports.GetTextLineHeight = bind_imgui_48.GetTextLineHeight; // IMGUI_API float GetTextLineHeightWithSpacing(); // ~ FontSize + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of text) -var bind_imgui_44 = require("./bind-imgui"); -exports.GetTextLineHeightWithSpacing = bind_imgui_44.GetTextLineHeightWithSpacing; +var bind_imgui_49 = require("./bind-imgui"); +exports.GetTextLineHeightWithSpacing = bind_imgui_49.GetTextLineHeightWithSpacing; // IMGUI_API float GetFrameHeight(); // ~ FontSize + style.FramePadding.y * 2 -var bind_imgui_45 = require("./bind-imgui"); -exports.GetFrameHeight = bind_imgui_45.GetFrameHeight; +var bind_imgui_50 = require("./bind-imgui"); +exports.GetFrameHeight = bind_imgui_50.GetFrameHeight; // IMGUI_API float GetFrameHeightWithSpacing(); // ~ FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets) -var bind_imgui_46 = require("./bind-imgui"); -exports.GetFrameHeightWithSpacing = bind_imgui_46.GetFrameHeightWithSpacing; +var bind_imgui_51 = require("./bind-imgui"); +exports.GetFrameHeightWithSpacing = bind_imgui_51.GetFrameHeightWithSpacing; // Columns // You can also use SameLine(pos_x) for simplified columns. The columns API is still work-in-progress and rather lacking. // IMGUI_API void Columns(int count = 1, const char* id = NULL, bool border = true); @@ -1607,30 +1733,30 @@ } exports.Columns = Columns; // IMGUI_API void NextColumn(); // next column, defaults to current row or next row if the current row is finished -var bind_imgui_47 = require("./bind-imgui"); -exports.NextColumn = bind_imgui_47.NextColumn; +var bind_imgui_52 = require("./bind-imgui"); +exports.NextColumn = bind_imgui_52.NextColumn; // IMGUI_API int GetColumnIndex(); // get current column index -var bind_imgui_48 = require("./bind-imgui"); -exports.GetColumnIndex = bind_imgui_48.GetColumnIndex; +var bind_imgui_53 = require("./bind-imgui"); +exports.GetColumnIndex = bind_imgui_53.GetColumnIndex; // IMGUI_API float GetColumnWidth(int column_index = -1); // get column width (in pixels). pass -1 to use current column function GetColumnWidth(column_index = -1) { return bind.GetColumnWidth(column_index); } exports.GetColumnWidth = GetColumnWidth; // IMGUI_API void SetColumnWidth(int column_index, float width); // set column width (in pixels). pass -1 to use current column -var bind_imgui_49 = require("./bind-imgui"); -exports.SetColumnWidth = bind_imgui_49.SetColumnWidth; +var bind_imgui_54 = require("./bind-imgui"); +exports.SetColumnWidth = bind_imgui_54.SetColumnWidth; // IMGUI_API float GetColumnOffset(int column_index = -1); // get position of column line (in pixels, from the left side of the contents region). pass -1 to use current column, otherwise 0..GetColumnsCount() inclusive. column 0 is typically 0.0f function GetColumnOffset(column_index = -1) { return bind.GetColumnOffset(column_index); } exports.GetColumnOffset = GetColumnOffset; // IMGUI_API void SetColumnOffset(int column_index, float offset_x); // set position of column line (in pixels, from the left side of the contents region). pass -1 to use current column -var bind_imgui_50 = require("./bind-imgui"); -exports.SetColumnOffset = bind_imgui_50.SetColumnOffset; +var bind_imgui_55 = require("./bind-imgui"); +exports.SetColumnOffset = bind_imgui_55.SetColumnOffset; // IMGUI_API int GetColumnsCount(); -var bind_imgui_51 = require("./bind-imgui"); -exports.GetColumnsCount = bind_imgui_51.GetColumnsCount; +var bind_imgui_56 = require("./bind-imgui"); +exports.GetColumnsCount = bind_imgui_56.GetColumnsCount; // ID scopes // If you are creating widgets in a loop you most likely want to push a unique identifier (e.g. object pointer, loop index) so ImGui can differentiate them. // You can also use the "##foobar" syntax within widget label to distinguish them from each others. Read "A primer on the use of labels/IDs" in the FAQ for more details. @@ -1638,16 +1764,16 @@ // IMGUI_API void PushID(const char* str_id_begin, const char* str_id_end); // IMGUI_API void PushID(const void* ptr_id); // IMGUI_API void PushID(int int_id); -var bind_imgui_52 = require("./bind-imgui"); -exports.PushID = bind_imgui_52.PushID; +var bind_imgui_57 = require("./bind-imgui"); +exports.PushID = bind_imgui_57.PushID; // IMGUI_API void PopID(); -var bind_imgui_53 = require("./bind-imgui"); -exports.PopID = bind_imgui_53.PopID; +var bind_imgui_58 = require("./bind-imgui"); +exports.PopID = bind_imgui_58.PopID; // IMGUI_API ImGuiID GetID(const char* str_id); // calculate unique ID (hash of whole ID stack + given parameter). e.g. if you want to query into ImGuiStorage yourself // IMGUI_API ImGuiID GetID(const char* str_id_begin, const char* str_id_end); // IMGUI_API ImGuiID GetID(const void* ptr_id); -var bind_imgui_54 = require("./bind-imgui"); -exports.GetID = bind_imgui_54.GetID; +var bind_imgui_59 = require("./bind-imgui"); +exports.GetID = bind_imgui_59.GetID; // Widgets: Text // IMGUI_API void TextUnformatted(const char* text, const char* text_end = NULL); // raw text without formatting. Roughly equivalent to Text("%s", text) but: A) doesn't require null terminated string if 'text_end' is specified, B) it's faster, no memory copy is done, no buffer size limits, recommended for long chunks of text. function TextUnformatted(text) { bind.TextUnformatted(text); } @@ -1679,8 +1805,8 @@ function BulletText(fmt /*, ...args: any[]*/) { bind.BulletText(fmt /*, ...args*/); } exports.BulletText = BulletText; // IMGUI_API void Bullet(); // draw a small circle and keep the cursor on the same line. advance cursor x position by GetTreeNodeToLabelSpacing(), same distance that TreeNode() uses -var bind_imgui_55 = require("./bind-imgui"); -exports.Bullet = bind_imgui_55.Bullet; +var bind_imgui_60 = require("./bind-imgui"); +exports.Bullet = bind_imgui_60.Bullet; // Widgets: Main // IMGUI_API bool Button(const char* label, const ImVec2& size = ImVec2(0,0)); // button function Button(label, size = ImVec2.ZERO) { @@ -1688,8 +1814,8 @@ } exports.Button = Button; // IMGUI_API bool SmallButton(const char* label); // button with FramePadding=(0,0) to easily embed within text -var bind_imgui_56 = require("./bind-imgui"); -exports.SmallButton = bind_imgui_56.SmallButton; +var bind_imgui_61 = require("./bind-imgui"); +exports.SmallButton = bind_imgui_61.SmallButton; // IMGUI_API bool InvisibleButton(const char* str_id, const ImVec2& size); // button behavior without the visuals, useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.) function InvisibleButton(str_id, size) { return bind.InvisibleButton(str_id, size); @@ -1720,7 +1846,15 @@ exports.Checkbox = Checkbox; // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); function CheckboxFlags(label, flags, flags_value) { - return bind.CheckboxFlags(label, flags, flags_value); + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } + else { + const ref_flags = [flags()]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } exports.CheckboxFlags = CheckboxFlags; // IMGUI_API bool RadioButton(const char* label, bool active); @@ -1777,7 +1911,7 @@ } exports.ProgressBar = ProgressBar; // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); function BeginCombo(label, preview_value, flags = 0) { @@ -2276,17 +2410,17 @@ exports.TreeNodeEx = TreeNodeEx; // IMGUI_API void TreePush(const char* str_id); // ~ Indent()+PushId(). Already called by TreeNode() when returning true, but you can call Push/Pop yourself for layout purpose // IMGUI_API void TreePush(const void* ptr_id = NULL); // " -var bind_imgui_57 = require("./bind-imgui"); -exports.TreePush = bind_imgui_57.TreePush; +var bind_imgui_62 = require("./bind-imgui"); +exports.TreePush = bind_imgui_62.TreePush; // IMGUI_API void TreePop(); // ~ Unindent()+PopId() -var bind_imgui_58 = require("./bind-imgui"); -exports.TreePop = bind_imgui_58.TreePop; +var bind_imgui_63 = require("./bind-imgui"); +exports.TreePop = bind_imgui_63.TreePop; // IMGUI_API void TreeAdvanceToLabelPos(); // advance cursor x position by GetTreeNodeToLabelSpacing() -var bind_imgui_59 = require("./bind-imgui"); -exports.TreeAdvanceToLabelPos = bind_imgui_59.TreeAdvanceToLabelPos; +var bind_imgui_64 = require("./bind-imgui"); +exports.TreeAdvanceToLabelPos = bind_imgui_64.TreeAdvanceToLabelPos; // IMGUI_API float GetTreeNodeToLabelSpacing(); // horizontal distance preceding label when using TreeNode*() or Bullet() == (g.FontSize + style.FramePadding.x*2) for a regular unframed TreeNode -var bind_imgui_60 = require("./bind-imgui"); -exports.GetTreeNodeToLabelSpacing = bind_imgui_60.GetTreeNodeToLabelSpacing; +var bind_imgui_65 = require("./bind-imgui"); +exports.GetTreeNodeToLabelSpacing = bind_imgui_65.GetTreeNodeToLabelSpacing; // IMGUI_API void SetNextTreeNodeOpen(bool is_open, ImGuiCond cond = 0); // set next TreeNode/CollapsingHeader open state. function SetNextTreeNodeOpen(is_open, cond = 0) { bind.SetNextTreeNodeOpen(is_open, cond); @@ -2365,30 +2499,30 @@ } exports.SetTooltip = SetTooltip; // IMGUI_API void BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of contents). -var bind_imgui_61 = require("./bind-imgui"); -exports.BeginTooltip = bind_imgui_61.BeginTooltip; +var bind_imgui_66 = require("./bind-imgui"); +exports.BeginTooltip = bind_imgui_66.BeginTooltip; // IMGUI_API void EndTooltip(); -var bind_imgui_62 = require("./bind-imgui"); -exports.EndTooltip = bind_imgui_62.EndTooltip; +var bind_imgui_67 = require("./bind-imgui"); +exports.EndTooltip = bind_imgui_67.EndTooltip; // Menus // IMGUI_API bool BeginMainMenuBar(); // create and append to a full screen menu-bar. only call EndMainMenuBar() if this returns true! -var bind_imgui_63 = require("./bind-imgui"); -exports.BeginMainMenuBar = bind_imgui_63.BeginMainMenuBar; +var bind_imgui_68 = require("./bind-imgui"); +exports.BeginMainMenuBar = bind_imgui_68.BeginMainMenuBar; // IMGUI_API void EndMainMenuBar(); -var bind_imgui_64 = require("./bind-imgui"); -exports.EndMainMenuBar = bind_imgui_64.EndMainMenuBar; +var bind_imgui_69 = require("./bind-imgui"); +exports.EndMainMenuBar = bind_imgui_69.EndMainMenuBar; // IMGUI_API bool BeginMenuBar(); // append to menu-bar of current window (requires ImGuiWindowFlags_MenuBar flag set on parent window). only call EndMenuBar() if this returns true! -var bind_imgui_65 = require("./bind-imgui"); -exports.BeginMenuBar = bind_imgui_65.BeginMenuBar; +var bind_imgui_70 = require("./bind-imgui"); +exports.BeginMenuBar = bind_imgui_70.BeginMenuBar; // IMGUI_API void EndMenuBar(); -var bind_imgui_66 = require("./bind-imgui"); -exports.EndMenuBar = bind_imgui_66.EndMenuBar; +var bind_imgui_71 = require("./bind-imgui"); +exports.EndMenuBar = bind_imgui_71.EndMenuBar; // IMGUI_API bool BeginMenu(const char* label, bool enabled = true); // create a sub-menu entry. only call EndMenu() if this returns true! function BeginMenu(label, enabled = true) { return bind.BeginMenu(label, enabled); } exports.BeginMenu = BeginMenu; // IMGUI_API void EndMenu(); -var bind_imgui_67 = require("./bind-imgui"); -exports.EndMenu = bind_imgui_67.EndMenu; +var bind_imgui_72 = require("./bind-imgui"); +exports.EndMenu = bind_imgui_72.EndMenu; // IMGUI_API bool MenuItem(const char* label, const char* shortcut = NULL, bool selected = false, bool enabled = true); // return true when activated. shortcuts are displayed for convenience but not processed by ImGui at the moment // IMGUI_API bool MenuItem(const char* label, const char* shortcut, bool* p_selected, bool enabled = true); // return true when activated + toggle (*p_selected) if p_selected != NULL function MenuItem(label, shortcut = null, selected = false, enabled = true) { @@ -2412,16 +2546,16 @@ exports.MenuItem = MenuItem; // Popups // IMGUI_API void OpenPopup(const char* str_id); // call to mark popup as open (don't call every frame!). popups are closed when user click outside, or if CloseCurrentPopup() is called within a BeginPopup()/EndPopup() block. By default, Selectable()/MenuItem() are calling CloseCurrentPopup(). Popup identifiers are relative to the current ID-stack (so OpenPopup and BeginPopup needs to be at the same level). -var bind_imgui_68 = require("./bind-imgui"); -exports.OpenPopup = bind_imgui_68.OpenPopup; +var bind_imgui_73 = require("./bind-imgui"); +exports.OpenPopup = bind_imgui_73.OpenPopup; // IMGUI_API bool OpenPopupOnItemClick(const char* str_id = NULL, int mouse_button = 1); // helper to open popup when clicked on last item. return true when just opened. function OpenPopupOnItemClick(str_id = "", mouse_button = 1) { return bind.OpenPopupOnItemClick(str_id, mouse_button); } exports.OpenPopupOnItemClick = OpenPopupOnItemClick; // IMGUI_API bool BeginPopup(const char* str_id); // return true if the popup is open, and you can start outputting to it. only call EndPopup() if BeginPopup() returned true! -var bind_imgui_69 = require("./bind-imgui"); -exports.BeginPopup = bind_imgui_69.BeginPopup; +var bind_imgui_74 = require("./bind-imgui"); +exports.BeginPopup = bind_imgui_74.BeginPopup; // IMGUI_API bool BeginPopupModal(const char* name, bool* p_open = NULL, ImGuiWindowFlags extra_flags = 0); // modal dialog (block interactions behind the modal window, can't close the modal window by clicking outside) function BeginPopupModal(str_id = "", p_open = null, extra_flags = 0) { p_open = p_open || [true]; @@ -2444,14 +2578,14 @@ } exports.BeginPopupContextVoid = BeginPopupContextVoid; // IMGUI_API void EndPopup(); -var bind_imgui_70 = require("./bind-imgui"); -exports.EndPopup = bind_imgui_70.EndPopup; +var bind_imgui_75 = require("./bind-imgui"); +exports.EndPopup = bind_imgui_75.EndPopup; // IMGUI_API bool IsPopupOpen(const char* str_id); // return true if the popup is open -var bind_imgui_71 = require("./bind-imgui"); -exports.IsPopupOpen = bind_imgui_71.IsPopupOpen; +var bind_imgui_76 = require("./bind-imgui"); +exports.IsPopupOpen = bind_imgui_76.IsPopupOpen; // IMGUI_API void CloseCurrentPopup(); // close the popup we have begin-ed into. clicking on a MenuItem or Selectable automatically close the current popup. -var bind_imgui_72 = require("./bind-imgui"); -exports.CloseCurrentPopup = bind_imgui_72.CloseCurrentPopup; +var bind_imgui_77 = require("./bind-imgui"); +exports.CloseCurrentPopup = bind_imgui_77.CloseCurrentPopup; // Logging/Capture: all text output from interface is captured to tty/file/clipboard. By default, tree nodes are automatically opened during logging. // IMGUI_API void LogToTTY(int max_depth = -1); // start logging to tty function LogToTTY(max_depth = -1) { @@ -2469,11 +2603,11 @@ } exports.LogToClipboard = LogToClipboard; // IMGUI_API void LogFinish(); // stop logging (close file, etc.) -var bind_imgui_73 = require("./bind-imgui"); -exports.LogFinish = bind_imgui_73.LogFinish; +var bind_imgui_78 = require("./bind-imgui"); +exports.LogFinish = bind_imgui_78.LogFinish; // IMGUI_API void LogButtons(); // helper to display buttons for logging to tty/file/clipboard -var bind_imgui_74 = require("./bind-imgui"); -exports.LogButtons = bind_imgui_74.LogButtons; +var bind_imgui_79 = require("./bind-imgui"); +exports.LogButtons = bind_imgui_79.LogButtons; // IMGUI_API void LogText(const char* fmt, ...) IM_FMTARGS(1); // pass text data straight to log (without being displayed) function LogText(fmt) { bind.LogText(fmt); @@ -2520,67 +2654,12 @@ bind.PopClipRect(); } exports.PopClipRect = PopClipRect; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -function StyleColorsClassic(dst = null) { - if (dst === null) { - bind.StyleColorsClassic(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsClassic = StyleColorsClassic; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -function StyleColorsDark(dst = null) { - if (dst === null) { - bind.StyleColorsDark(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsDark = StyleColorsDark; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -function StyleColorsLight(dst = null) { - if (dst === null) { - bind.StyleColorsLight(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsLight = StyleColorsLight; // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) // IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window (WIP navigation branch only). Pleaase use instead of SetScrollHere(). -var bind_imgui_75 = require("./bind-imgui"); -exports.SetItemDefaultFocus = bind_imgui_75.SetItemDefaultFocus; +var bind_imgui_80 = require("./bind-imgui"); +exports.SetItemDefaultFocus = bind_imgui_80.SetItemDefaultFocus; // IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget. function SetKeyboardFocusHere(offset = 0) { bind.SetKeyboardFocusHere(offset); @@ -2593,22 +2672,28 @@ } exports.IsItemHovered = IsItemHovered; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) -var bind_imgui_76 = require("./bind-imgui"); -exports.IsItemActive = bind_imgui_76.IsItemActive; +var bind_imgui_81 = require("./bind-imgui"); +exports.IsItemActive = bind_imgui_81.IsItemActive; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +var bind_imgui_82 = require("./bind-imgui"); +exports.IsItemFocused = bind_imgui_82.IsItemFocused; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) function IsItemClicked(mouse_button = 0) { return bind.IsItemClicked(mouse_button); } exports.IsItemClicked = IsItemClicked; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) -var bind_imgui_77 = require("./bind-imgui"); -exports.IsItemVisible = bind_imgui_77.IsItemVisible; +var bind_imgui_83 = require("./bind-imgui"); +exports.IsItemVisible = bind_imgui_83.IsItemVisible; // IMGUI_API bool IsAnyItemHovered(); -var bind_imgui_78 = require("./bind-imgui"); -exports.IsAnyItemHovered = bind_imgui_78.IsAnyItemHovered; +var bind_imgui_84 = require("./bind-imgui"); +exports.IsAnyItemHovered = bind_imgui_84.IsAnyItemHovered; // IMGUI_API bool IsAnyItemActive(); -var bind_imgui_79 = require("./bind-imgui"); -exports.IsAnyItemActive = bind_imgui_79.IsAnyItemActive; +var bind_imgui_85 = require("./bind-imgui"); +exports.IsAnyItemActive = bind_imgui_85.IsAnyItemActive; +// IMGUI_API bool IsAnyItemFocused(); +var bind_imgui_86 = require("./bind-imgui"); +exports.IsAnyItemFocused = bind_imgui_86.IsAnyItemFocused; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space function GetItemRectMin(out = new ImVec2()) { return bind.GetItemRectMin(out); @@ -2625,8 +2710,8 @@ } exports.GetItemRectSize = GetItemRectSize; // IMGUI_API void SetItemAllowOverlap(); // allow last item to be overlapped by a subsequent item. sometimes useful with invisible buttons, selectables, etc. to catch unused area. -var bind_imgui_80 = require("./bind-imgui"); -exports.SetItemAllowOverlap = bind_imgui_80.SetItemAllowOverlap; +var bind_imgui_87 = require("./bind-imgui"); +exports.SetItemAllowOverlap = bind_imgui_87.SetItemAllowOverlap; // IMGUI_API bool IsWindowFocused(ImGuiFocusedFlags flags = 0); // is current window focused? or its root/child, depending on flags. see flags for options. function IsWindowFocused(flags = 0) { return bind.IsWindowFocused(flags); @@ -2637,12 +2722,6 @@ return bind.IsWindowHovered(flags); } exports.IsWindowHovered = IsWindowHovered; -// IMGUI_API bool IsAnyWindowFocused(); -var bind_imgui_81 = require("./bind-imgui"); -exports.IsAnyWindowFocused = bind_imgui_81.IsAnyWindowFocused; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -var bind_imgui_82 = require("./bind-imgui"); -exports.IsAnyWindowHovered = bind_imgui_82.IsAnyWindowHovered; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. function IsRectVisible(size_or_rect_min, rect_max) { @@ -2650,11 +2729,11 @@ } exports.IsRectVisible = IsRectVisible; // IMGUI_API float GetTime(); -var bind_imgui_83 = require("./bind-imgui"); -exports.GetTime = bind_imgui_83.GetTime; +var bind_imgui_88 = require("./bind-imgui"); +exports.GetTime = bind_imgui_88.GetTime; // IMGUI_API int GetFrameCount(); -var bind_imgui_84 = require("./bind-imgui"); -exports.GetFrameCount = bind_imgui_84.GetFrameCount; +var bind_imgui_89 = require("./bind-imgui"); +exports.GetFrameCount = bind_imgui_89.GetFrameCount; // IMGUI_API ImDrawList* GetOverlayDrawList(); // this draw list will be the last rendered one, useful to quickly draw overlays shapes/text function GetOverlayDrawList() { return new ImDrawList(bind.GetOverlayDrawList()); @@ -2666,13 +2745,8 @@ } exports.GetDrawListSharedData = GetDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); -var bind_imgui_85 = require("./bind-imgui"); -exports.GetStyleColorName = bind_imgui_85.GetStyleColorName; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -function CalcItemRectClosestPoint(pos, on_edge = false, outward = +0.0, out = new ImVec2()) { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} -exports.CalcItemRectClosestPoint = CalcItemRectClosestPoint; +var bind_imgui_90 = require("./bind-imgui"); +exports.GetStyleColorName = bind_imgui_90.GetStyleColorName; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); function CalcTextSize(text, text_end = null, hide_text_after_double_hash = false, wrap_width = -1, out = new ImVec2()) { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2689,8 +2763,8 @@ } exports.BeginChildFrame = BeginChildFrame; // IMGUI_API void EndChildFrame(); -var bind_imgui_86 = require("./bind-imgui"); -exports.EndChildFrame = bind_imgui_86.EndChildFrame; +var bind_imgui_91 = require("./bind-imgui"); +exports.EndChildFrame = bind_imgui_91.EndChildFrame; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); function ColorConvertU32ToFloat4(in_, out = new ImVec4()) { return bind.ColorConvertU32ToFloat4(in_, out); @@ -2702,11 +2776,11 @@ } exports.ColorConvertFloat4ToU32 = ColorConvertFloat4ToU32; // IMGUI_API void ColorConvertRGBtoHSV(float r, float g, float b, float& out_h, float& out_s, float& out_v); -var bind_imgui_87 = require("./bind-imgui"); -exports.ColorConvertRGBtoHSV = bind_imgui_87.ColorConvertRGBtoHSV; +var bind_imgui_92 = require("./bind-imgui"); +exports.ColorConvertRGBtoHSV = bind_imgui_92.ColorConvertRGBtoHSV; // IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float& out_r, float& out_g, float& out_b); -var bind_imgui_88 = require("./bind-imgui"); -exports.ColorConvertHSVtoRGB = bind_imgui_88.ColorConvertHSVtoRGB; +var bind_imgui_93 = require("./bind-imgui"); +exports.ColorConvertHSVtoRGB = bind_imgui_93.ColorConvertHSVtoRGB; // Inputs // IMGUI_API int GetKeyIndex(ImGuiKey imgui_key); // map ImGuiKey_* values into user's key index. == io.KeyMap[key] function GetKeyIndex(imgui_key) { @@ -2789,11 +2863,11 @@ } exports.ResetMouseDragDelta = ResetMouseDragDelta; // IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired cursor type, reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you -var bind_imgui_89 = require("./bind-imgui"); -exports.GetMouseCursor = bind_imgui_89.GetMouseCursor; +var bind_imgui_94 = require("./bind-imgui"); +exports.GetMouseCursor = bind_imgui_94.GetMouseCursor; // IMGUI_API void SetMouseCursor(ImGuiMouseCursor type); // set desired cursor type -var bind_imgui_90 = require("./bind-imgui"); -exports.SetMouseCursor = bind_imgui_90.SetMouseCursor; +var bind_imgui_95 = require("./bind-imgui"); +exports.SetMouseCursor = bind_imgui_95.SetMouseCursor; // IMGUI_API void CaptureKeyboardFromApp(bool capture = true); // manually override io.WantCaptureKeyboard flag next frame (said flag is entirely left for your application handle). e.g. force capture keyboard when your widget is being hovered. function CaptureKeyboardFromApp(capture = true) { return bind.CaptureKeyboardFromApp(capture); @@ -2806,40 +2880,15 @@ exports.CaptureMouseFromApp = CaptureMouseFromApp; // Helpers functions to access functions pointers in ImGui::GetIO() // IMGUI_API void* MemAlloc(size_t sz); -var bind_imgui_91 = require("./bind-imgui"); -exports.MemAlloc = bind_imgui_91.MemAlloc; -// IMGUI_API void MemFree(void* ptr); -var bind_imgui_92 = require("./bind-imgui"); -exports.MemFree = bind_imgui_92.MemFree; -// IMGUI_API const char* GetClipboardText(); -var bind_imgui_93 = require("./bind-imgui"); -exports.GetClipboardText = bind_imgui_93.GetClipboardText; -// IMGUI_API void SetClipboardText(const char* text); -var bind_imgui_94 = require("./bind-imgui"); -exports.SetClipboardText = bind_imgui_94.SetClipboardText; -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -var bind_imgui_95 = require("./bind-imgui"); -exports.GetVersion = bind_imgui_95.GetVersion; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -function CreateContext() { - return bind.CreateContext(); -} -exports.CreateContext = CreateContext; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -function DestroyContext(ctx = null) { - return bind.DestroyContext(ctx); -} -exports.DestroyContext = DestroyContext; -// IMGUI_API ImGuiContext* GetCurrentContext(); var bind_imgui_96 = require("./bind-imgui"); -exports.GetCurrentContext = bind_imgui_96.GetCurrentContext; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +exports.MemAlloc = bind_imgui_96.MemAlloc; +// IMGUI_API void MemFree(void* ptr); var bind_imgui_97 = require("./bind-imgui"); -exports.SetCurrentContext = bind_imgui_97.SetCurrentContext; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBMEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file +exports.MemFree = bind_imgui_97.MemFree; +// IMGUI_API const char* GetClipboardText(); +var bind_imgui_98 = require("./bind-imgui"); +exports.GetClipboardText = bind_imgui_98.GetClipboardText; +// IMGUI_API void SetClipboardText(const char* text); +var bind_imgui_99 = require("./bind-imgui"); +exports.SetClipboardText = bind_imgui_99.SetClipboardText; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBNEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/imgui b/imgui index e916310..41ecebf 160000 --- a/imgui +++ b/imgui @@ -1 +1 @@ -Subproject commit e916310b2e1f9cacbb2b9ce192a3dfb359e4b509 +Subproject commit 41ecebff5a63b1fa71ad0d1ef6f1e6d3d39ef07d diff --git a/imgui.js b/imgui.js index 0fc91d6..686abff 100644 --- a/imgui.js +++ b/imgui.js @@ -129,7 +129,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -272,7 +272,7 @@ exports.ImGuiTextBuffer = ImGuiTextBuffer; // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -420,7 +420,7 @@ exports.ImGuiTextEditCallbackData = ImGuiTextEditCallbackData; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -class ImGuiSizeConstraintCallbackData { +class ImGuiSizeCallbackData { constructor(native) { this.native = native; } @@ -433,7 +433,7 @@ get CurrentSize() { return this.native.getCurrentSize(); } get DesiredSize() { return this.native.getDesiredSize(); } } -exports.ImGuiSizeConstraintCallbackData = ImGuiSizeConstraintCallbackData; +exports.ImGuiSizeCallbackData = ImGuiSizeCallbackData; class ImGuiListClipper { get StartPosY() { return this.native.StartPosY; } get ItemsHeight() { return this.native.ItemsHeight; } @@ -524,7 +524,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif // Draw channels are used by the Columns API to "split" the render list into different channels while building, so items of each column can be batched together. @@ -681,6 +681,8 @@ class ImFontGlyph { } exports.ImFontGlyph = ImFontGlyph; +var bind_imgui_9 = require("./bind-imgui"); +exports.ImFontAtlasFlags = bind_imgui_9.ImFontAtlasFlags; // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -707,7 +709,7 @@ // IMGUI_API void Clear(); // Clear all // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -815,36 +817,37 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle { constructor() { - this.Alpha = 1.0; // Global alpha applies to everything in ImGui - this.WindowPadding = new ImVec2(8, 8); // Padding within a window - this.WindowRounding = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - this.WindowBorderSize = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.WindowMinSize = new ImVec2(32, 32); // Minimum window size - this.WindowTitleAlign = new ImVec2(0.0, 0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. - this.ChildRounding = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - this.ChildBorderSize = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.PopupRounding = 0.0; // Radius of popup window corners rounding. - this.PopupBorderSize = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.FramePadding = new ImVec2(4, 3); // Padding within a framed rectangle (used by most widgets) - this.FrameRounding = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - this.FrameBorderSize = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.ItemSpacing = new ImVec2(8, 4); // Horizontal and vertical spacing between widgets/lines - this.ItemInnerSpacing = new ImVec2(4, 4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) - this.TouchExtraPadding = new ImVec2(0, 0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! - this.IndentSpacing = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - this.ColumnsMinSpacing = 6.0; // Minimum horizontal spacing between two columns - this.ScrollbarSize = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - this.ScrollbarRounding = 9.0; // Radius of grab corners for scrollbar - this.GrabMinSize = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - this.GrabRounding = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - this.ButtonTextAlign = new ImVec2(0.5, 0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. - this.DisplayWindowPadding = new ImVec2(22, 22); // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. - this.DisplaySafeAreaPadding = new ImVec2(4, 4); // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. - this.AntiAliasedLines = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - this.AntiAliasedFill = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - this.CurveTessellationTol = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + this.Alpha = 1.0; + this.WindowPadding = new ImVec2(8, 8); + this.WindowRounding = 7.0; + this.WindowBorderSize = 0.0; + this.WindowMinSize = new ImVec2(32, 32); + this.WindowTitleAlign = new ImVec2(0.0, 0.5); + this.ChildRounding = 0.0; + this.ChildBorderSize = 1.0; + this.PopupRounding = 0.0; + this.PopupBorderSize = 1.0; + this.FramePadding = new ImVec2(4, 3); + this.FrameRounding = 0.0; + this.FrameBorderSize = 0.0; + this.ItemSpacing = new ImVec2(8, 4); + this.ItemInnerSpacing = new ImVec2(4, 4); + this.TouchExtraPadding = new ImVec2(0, 0); + this.IndentSpacing = 21.0; + this.ColumnsMinSpacing = 6.0; + this.ScrollbarSize = 16.0; + this.ScrollbarRounding = 9.0; + this.GrabMinSize = 10.0; + this.GrabRounding = 0.0; + this.ButtonTextAlign = new ImVec2(0.5, 0.5); + this.DisplayWindowPadding = new ImVec2(22, 22); + this.DisplaySafeAreaPadding = new ImVec2(4, 4); + this.MouseCursorScale = 1; + this.AntiAliasedLines = true; + this.AntiAliasedFill = true; + this.CurveTessellationTol = 1.25; this.Colors = []; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i] = new ImVec4(); } const _this = new ImGuiStyle(this); @@ -883,7 +886,7 @@ this.Colors = new Proxy([], { get: (target, key) => { if (key === "length") { - return 43 /* COUNT */; + return 45 /* COUNT */; } return this.internal.getColorsAt(Number(key)); }, @@ -932,6 +935,8 @@ get ButtonTextAlign() { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding() { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding() { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale() { return this.internal.MouseCursorScale; } + set MouseCursorScale(value) { this.internal.MouseCursorScale = value; } get AntiAliasedLines() { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill() { return this.internal.AntiAliasedFill; } @@ -964,10 +969,11 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i].Copy(other.Colors[i]); } return this; @@ -980,9 +986,6 @@ class ImGuiIO { constructor(native) { this.native = native; - // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. - // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. - // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -990,7 +993,7 @@ this.KeyMap = new Proxy([], { get: (target, key) => { if (key === "length") { - return 19 /* COUNT */; + return 21 /* COUNT */; } return this.native.getKeyMapAt(Number(key)); }, @@ -1022,11 +1025,33 @@ return this.native.setKeysDownAt(Number(key), value); } }); + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + this.NavInputs = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target, key, value) => { + return this.native.setNavInputsAt(Number(key), value); + } + }); //------------------------------------------------------------------ // [Internal] ImGui will maintain those fields. Forward compatibility not guaranteed! //------------------------------------------------------------------ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + this.MouseClickedPos = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 5; + } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1053,6 +1078,16 @@ return this.native.getKeysDownDurationAt(Number(key)); } }); + // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + this.NavInputsDownDuration = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); } //------------------------------------------------------------------ // Settings (fill once) // Default value: @@ -1062,6 +1097,12 @@ // float DeltaTime; // = 1.0f/60.0f // Time elapsed since last frame, in seconds. get DeltaTime() { return this.native.DeltaTime; } set DeltaTime(value) { this.native.DeltaTime = value; } + // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. + // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. + // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags() { return this.native.NavFlags; } + set NavFlags(value) { this.native.NavFlags = value; } // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). // float KeyRepeatRate; // = 0.050f // When holding a key/button, rate at which it repeats, in seconds. // void* UserData; // = NULL // Store your own data for retrieval by callbacks. @@ -1110,6 +1151,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. get MouseWheel() { return this.native.MouseWheel; } set MouseWheel(value) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + get MouseWheelH() { return this.native.MouseWheelH; } + set MouseWheelH(value) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor() { return this.native.MouseDrawCursor; } set MouseDrawCursor(value) { this.native.MouseDrawCursor = value; } @@ -1125,7 +1169,6 @@ // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows get KeySuper() { return this.native.KeySuper; } set KeySuper(value) { this.native.KeySuper = value; } - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] AddInputCharacter(c) { this.native.AddInputCharacter(c); } @@ -1134,7 +1177,7 @@ //------------------------------------------------------------------ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse() { return this.native.WantCaptureMouse; } set WantCaptureMouse(value) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. @@ -1146,6 +1189,12 @@ // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse() { return this.native.WantMoveMouse; } set WantMoveMouse(value) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive() { return this.native.NavActive; } + set NavActive(value) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible() { return this.native.NavVisible; } + set NavVisible(value) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate() { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1156,6 +1205,25 @@ get MouseDelta() { return this.native.getMouseDelta(); } } exports.ImGuiIO = ImGuiIO; +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +function CreateContext(shared_font_atlas = null) { + return bind.CreateContext(); +} +exports.CreateContext = CreateContext; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +function DestroyContext(ctx = null) { + return bind.DestroyContext(ctx); +} +exports.DestroyContext = DestroyContext; +// IMGUI_API ImGuiContext* GetCurrentContext(); +var bind_imgui_10 = require("./bind-imgui"); +exports.GetCurrentContext = bind_imgui_10.GetCurrentContext; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +var bind_imgui_11 = require("./bind-imgui"); +exports.SetCurrentContext = bind_imgui_11.SetCurrentContext; // Main // IMGUI_API ImGuiIO& GetIO(); function GetIO() { return new ImGuiIO(bind.GetIO()); } @@ -1187,9 +1255,6 @@ // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! function EndFrame() { bind.EndFrame(); } exports.EndFrame = EndFrame; -// IMGUI_API void Shutdown(); -function Shutdown() { bind.Shutdown(); } -exports.Shutdown = Shutdown; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! function ShowDemoWindow(p_open = null) { bind.ShowDemoWindow(p_open); } @@ -1237,6 +1302,64 @@ // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). function ShowUserGuide() { bind.ShowUserGuide(); } exports.ShowUserGuide = ShowUserGuide; +// IMGUI_API const char* GetVersion(); +var bind_imgui_12 = require("./bind-imgui"); +exports.GetVersion = bind_imgui_12.GetVersion; +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +function StyleColorsClassic(dst = null) { + if (dst === null) { + bind.StyleColorsClassic(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsClassic = StyleColorsClassic; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +function StyleColorsDark(dst = null) { + if (dst === null) { + bind.StyleColorsDark(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsDark = StyleColorsDark; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +function StyleColorsLight(dst = null) { + if (dst === null) { + bind.StyleColorsLight(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsLight = StyleColorsLight; // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). function Begin(name, open = null, flags = 0) { @@ -1255,8 +1378,8 @@ } exports.Begin = Begin; // IMGUI_API void End(); // finish appending to current window, pop it off the window stack. -var bind_imgui_9 = require("./bind-imgui"); -exports.End = bind_imgui_9.End; +var bind_imgui_13 = require("./bind-imgui"); +exports.End = bind_imgui_13.End; // IMGUI_API bool BeginChild(const char* str_id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // begin a scrolling region. size==0.0f: use remaining window size, size<0.0f: use remaining window size minus abs(size). size>0.0f: fixed size. each axis can use a different mode, e.g. ImVec2(0,400). // IMGUI_API bool BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // " function BeginChild(id, size = ImVec2.ZERO, border = false, extra_flags = 0) { @@ -1279,8 +1402,8 @@ } exports.GetContentRegionAvail = GetContentRegionAvail; // IMGUI_API float GetContentRegionAvailWidth(); // -var bind_imgui_10 = require("./bind-imgui"); -exports.GetContentRegionAvailWidth = bind_imgui_10.GetContentRegionAvailWidth; +var bind_imgui_14 = require("./bind-imgui"); +exports.GetContentRegionAvailWidth = bind_imgui_14.GetContentRegionAvailWidth; // IMGUI_API ImVec2 GetWindowContentRegionMin(); // content boundaries min (roughly (0,0)-Scroll), in window coordinates function GetWindowContentRegionMin(out = new ImVec2()) { return bind.GetWindowContentRegionMin(out); @@ -1292,8 +1415,8 @@ } exports.GetWindowContentRegionMax = GetWindowContentRegionMax; // IMGUI_API float GetWindowContentRegionWidth(); // -var bind_imgui_11 = require("./bind-imgui"); -exports.GetWindowContentRegionWidth = bind_imgui_11.GetWindowContentRegionWidth; +var bind_imgui_15 = require("./bind-imgui"); +exports.GetWindowContentRegionWidth = bind_imgui_15.GetWindowContentRegionWidth; // IMGUI_API ImDrawList* GetWindowDrawList(); // get rendering command-list if you want to append your own draw primitives function GetWindowDrawList() { return new ImDrawList(bind.GetWindowDrawList()); @@ -1310,20 +1433,20 @@ } exports.GetWindowSize = GetWindowSize; // IMGUI_API float GetWindowWidth(); -var bind_imgui_12 = require("./bind-imgui"); -exports.GetWindowWidth = bind_imgui_12.GetWindowWidth; -// IMGUI_API float GetWindowHeight(); -var bind_imgui_13 = require("./bind-imgui"); -exports.GetWindowHeight = bind_imgui_13.GetWindowHeight; -// IMGUI_API bool IsWindowCollapsed(); -var bind_imgui_14 = require("./bind-imgui"); -exports.IsWindowCollapsed = bind_imgui_14.IsWindowCollapsed; -// IMGUI_API bool IsWindowAppearing(); -var bind_imgui_15 = require("./bind-imgui"); -exports.IsWindowAppearing = bind_imgui_15.IsWindowAppearing; -// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows var bind_imgui_16 = require("./bind-imgui"); -exports.SetWindowFontScale = bind_imgui_16.SetWindowFontScale; +exports.GetWindowWidth = bind_imgui_16.GetWindowWidth; +// IMGUI_API float GetWindowHeight(); +var bind_imgui_17 = require("./bind-imgui"); +exports.GetWindowHeight = bind_imgui_17.GetWindowHeight; +// IMGUI_API bool IsWindowCollapsed(); +var bind_imgui_18 = require("./bind-imgui"); +exports.IsWindowCollapsed = bind_imgui_18.IsWindowCollapsed; +// IMGUI_API bool IsWindowAppearing(); +var bind_imgui_19 = require("./bind-imgui"); +exports.IsWindowAppearing = bind_imgui_19.IsWindowAppearing; +// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows +var bind_imgui_20 = require("./bind-imgui"); +exports.SetWindowFontScale = bind_imgui_20.SetWindowFontScale; // IMGUI_API void SetNextWindowPos(const ImVec2& pos, ImGuiCond cond = 0, const ImVec2& pivot = ImVec2(0,0)); // set next window position. call before Begin(). use pivot=(0.5f,0.5f) to center on given point, etc. function SetNextWindowPos(pos, cond = 0, pivot = ImVec2.ZERO) { bind.SetNextWindowPos(pos, cond, pivot); @@ -1338,7 +1461,7 @@ function SetNextWindowSizeConstraints(size_min, size_max, custom_callback = null, custom_callback_data = null) { if (custom_callback) { function _custom_callback(data) { - const _data = new ImGuiSizeConstraintCallbackData(data); + const _data = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1360,10 +1483,13 @@ } exports.SetNextWindowCollapsed = SetNextWindowCollapsed; // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() -var bind_imgui_17 = require("./bind-imgui"); -exports.SetNextWindowFocus = bind_imgui_17.SetNextWindowFocus; +var bind_imgui_21 = require("./bind-imgui"); +exports.SetNextWindowFocus = bind_imgui_21.SetNextWindowFocus; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +var bind_imgui_22 = require("./bind-imgui"); +exports.SetNextWindowBgAlpha = bind_imgui_22.SetNextWindowBgAlpha; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1408,23 +1534,23 @@ } exports.SetWindowFocus = SetWindowFocus; // IMGUI_API float GetScrollX(); // get scrolling amount [0..GetScrollMaxX()] -var bind_imgui_18 = require("./bind-imgui"); -exports.GetScrollX = bind_imgui_18.GetScrollX; -// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] -var bind_imgui_19 = require("./bind-imgui"); -exports.GetScrollY = bind_imgui_19.GetScrollY; -// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X -var bind_imgui_20 = require("./bind-imgui"); -exports.GetScrollMaxX = bind_imgui_20.GetScrollMaxX; -// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y -var bind_imgui_21 = require("./bind-imgui"); -exports.GetScrollMaxY = bind_imgui_21.GetScrollMaxY; -// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] -var bind_imgui_22 = require("./bind-imgui"); -exports.SetScrollX = bind_imgui_22.SetScrollX; -// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] var bind_imgui_23 = require("./bind-imgui"); -exports.SetScrollY = bind_imgui_23.SetScrollY; +exports.GetScrollX = bind_imgui_23.GetScrollX; +// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] +var bind_imgui_24 = require("./bind-imgui"); +exports.GetScrollY = bind_imgui_24.GetScrollY; +// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X +var bind_imgui_25 = require("./bind-imgui"); +exports.GetScrollMaxX = bind_imgui_25.GetScrollMaxX; +// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y +var bind_imgui_26 = require("./bind-imgui"); +exports.GetScrollMaxY = bind_imgui_26.GetScrollMaxY; +// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] +var bind_imgui_27 = require("./bind-imgui"); +exports.SetScrollX = bind_imgui_27.SetScrollX; +// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] +var bind_imgui_28 = require("./bind-imgui"); +exports.SetScrollY = bind_imgui_28.SetScrollY; // IMGUI_API void SetScrollHere(float center_y_ratio = 0.5f); // adjust scrolling amount to make current cursor position visible. center_y_ratio=0.0: top, 0.5: center, 1.0: bottom. When using to make a "default/current item" visible, consider using SetItemDefaultFocus() instead. function SetScrollHere(center_y_ratio = 0.5) { bind.SetScrollHere(center_y_ratio); @@ -1482,8 +1608,8 @@ } exports.GetFont = GetFont; // IMGUI_API float GetFontSize(); // get current font size (= height in pixels) of current font with current scale applied -var bind_imgui_24 = require("./bind-imgui"); -exports.GetFontSize = bind_imgui_24.GetFontSize; +var bind_imgui_29 = require("./bind-imgui"); +exports.GetFontSize = bind_imgui_29.GetFontSize; // IMGUI_API ImVec2 GetFontTexUvWhitePixel(); // get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API function GetFontTexUvWhitePixel(out = new ImVec2()) { return bind.GetFontTexUvWhitePixel(out); @@ -1498,49 +1624,49 @@ exports.GetColorU32 = GetColorU32; // Parameters stacks (current window) // IMGUI_API void PushItemWidth(float item_width); // width of items for the common item+label case, pixels. 0.0f = default to ~2/3 of windows width, >0.0f: width in pixels, <0.0f align xx pixels to the right of window (so -1.0f always align width to the right side) -var bind_imgui_25 = require("./bind-imgui"); -exports.PushItemWidth = bind_imgui_25.PushItemWidth; +var bind_imgui_30 = require("./bind-imgui"); +exports.PushItemWidth = bind_imgui_30.PushItemWidth; // IMGUI_API void PopItemWidth(); -var bind_imgui_26 = require("./bind-imgui"); -exports.PopItemWidth = bind_imgui_26.PopItemWidth; +var bind_imgui_31 = require("./bind-imgui"); +exports.PopItemWidth = bind_imgui_31.PopItemWidth; // IMGUI_API float CalcItemWidth(); // width of item given pushed settings and current cursor position -var bind_imgui_27 = require("./bind-imgui"); -exports.CalcItemWidth = bind_imgui_27.CalcItemWidth; +var bind_imgui_32 = require("./bind-imgui"); +exports.CalcItemWidth = bind_imgui_32.CalcItemWidth; // IMGUI_API void PushTextWrapPos(float wrap_pos_x = 0.0f); // word-wrapping for Text*() commands. < 0.0f: no wrapping; 0.0f: wrap to end of window (or column); > 0.0f: wrap at 'wrap_pos_x' position in window local space function PushTextWrapPos(wrap_pos_x = 0.0) { bind.PushTextWrapPos(wrap_pos_x); } exports.PushTextWrapPos = PushTextWrapPos; // IMGUI_API void PopTextWrapPos(); -var bind_imgui_28 = require("./bind-imgui"); -exports.PopTextWrapPos = bind_imgui_28.PopTextWrapPos; +var bind_imgui_33 = require("./bind-imgui"); +exports.PopTextWrapPos = bind_imgui_33.PopTextWrapPos; // IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus); // allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets -var bind_imgui_29 = require("./bind-imgui"); -exports.PushAllowKeyboardFocus = bind_imgui_29.PushAllowKeyboardFocus; +var bind_imgui_34 = require("./bind-imgui"); +exports.PushAllowKeyboardFocus = bind_imgui_34.PushAllowKeyboardFocus; // IMGUI_API void PopAllowKeyboardFocus(); -var bind_imgui_30 = require("./bind-imgui"); -exports.PopAllowKeyboardFocus = bind_imgui_30.PopAllowKeyboardFocus; +var bind_imgui_35 = require("./bind-imgui"); +exports.PopAllowKeyboardFocus = bind_imgui_35.PopAllowKeyboardFocus; // IMGUI_API void PushButtonRepeat(bool repeat); // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame. -var bind_imgui_31 = require("./bind-imgui"); -exports.PushButtonRepeat = bind_imgui_31.PushButtonRepeat; +var bind_imgui_36 = require("./bind-imgui"); +exports.PushButtonRepeat = bind_imgui_36.PushButtonRepeat; // IMGUI_API void PopButtonRepeat(); -var bind_imgui_32 = require("./bind-imgui"); -exports.PopButtonRepeat = bind_imgui_32.PopButtonRepeat; +var bind_imgui_37 = require("./bind-imgui"); +exports.PopButtonRepeat = bind_imgui_37.PopButtonRepeat; // Cursor / Layout // IMGUI_API void Separator(); // separator, generally horizontal. inside a menu bar or in horizontal layout mode, this becomes a vertical separator. -var bind_imgui_33 = require("./bind-imgui"); -exports.Separator = bind_imgui_33.Separator; +var bind_imgui_38 = require("./bind-imgui"); +exports.Separator = bind_imgui_38.Separator; // IMGUI_API void SameLine(float pos_x = 0.0f, float spacing_w = -1.0f); // call between widgets or groups to layout them horizontally function SameLine(pos_x = 0.0, spacing_w = -1.0) { bind.SameLine(pos_x, spacing_w); } exports.SameLine = SameLine; // IMGUI_API void NewLine(); // undo a SameLine() -var bind_imgui_34 = require("./bind-imgui"); -exports.NewLine = bind_imgui_34.NewLine; +var bind_imgui_39 = require("./bind-imgui"); +exports.NewLine = bind_imgui_39.NewLine; // IMGUI_API void Spacing(); // add vertical spacing -var bind_imgui_35 = require("./bind-imgui"); -exports.Spacing = bind_imgui_35.Spacing; +var bind_imgui_40 = require("./bind-imgui"); +exports.Spacing = bind_imgui_40.Spacing; // IMGUI_API void Dummy(const ImVec2& size); // add a dummy item of given size function Dummy(size) { bind.Dummy(size); } exports.Dummy = Dummy; @@ -1551,29 +1677,29 @@ function Unindent(indent_w = 0.0) { bind.Unindent(indent_w); } exports.Unindent = Unindent; // IMGUI_API void BeginGroup(); // lock horizontal starting position + capture group bounding box into one "item" (so you can use IsItemHovered() or layout primitives such as SameLine() on whole group, etc.) -var bind_imgui_36 = require("./bind-imgui"); -exports.BeginGroup = bind_imgui_36.BeginGroup; +var bind_imgui_41 = require("./bind-imgui"); +exports.BeginGroup = bind_imgui_41.BeginGroup; // IMGUI_API void EndGroup(); -var bind_imgui_37 = require("./bind-imgui"); -exports.EndGroup = bind_imgui_37.EndGroup; +var bind_imgui_42 = require("./bind-imgui"); +exports.EndGroup = bind_imgui_42.EndGroup; // IMGUI_API ImVec2 GetCursorPos(); // cursor position is relative to window position function GetCursorPos(out = new ImVec2()) { return bind.GetCursorPos(out); } exports.GetCursorPos = GetCursorPos; // IMGUI_API float GetCursorPosX(); // " -var bind_imgui_38 = require("./bind-imgui"); -exports.GetCursorPosX = bind_imgui_38.GetCursorPosX; +var bind_imgui_43 = require("./bind-imgui"); +exports.GetCursorPosX = bind_imgui_43.GetCursorPosX; // IMGUI_API float GetCursorPosY(); // " -var bind_imgui_39 = require("./bind-imgui"); -exports.GetCursorPosY = bind_imgui_39.GetCursorPosY; +var bind_imgui_44 = require("./bind-imgui"); +exports.GetCursorPosY = bind_imgui_44.GetCursorPosY; // IMGUI_API void SetCursorPos(const ImVec2& local_pos); // " function SetCursorPos(local_pos) { bind.SetCursorPos(local_pos); } exports.SetCursorPos = SetCursorPos; // IMGUI_API void SetCursorPosX(float x); // " -var bind_imgui_40 = require("./bind-imgui"); -exports.SetCursorPosX = bind_imgui_40.SetCursorPosX; +var bind_imgui_45 = require("./bind-imgui"); +exports.SetCursorPosX = bind_imgui_45.SetCursorPosX; // IMGUI_API void SetCursorPosY(float y); // " -var bind_imgui_41 = require("./bind-imgui"); -exports.SetCursorPosY = bind_imgui_41.SetCursorPosY; +var bind_imgui_46 = require("./bind-imgui"); +exports.SetCursorPosY = bind_imgui_46.SetCursorPosY; // IMGUI_API ImVec2 GetCursorStartPos(); // initial cursor position function GetCursorStartPos(out = new ImVec2()) { return bind.GetCursorStartPos(out); } exports.GetCursorStartPos = GetCursorStartPos; @@ -1584,20 +1710,20 @@ function SetCursorScreenPos(pos) { bind.SetCursorScreenPos(pos); } exports.SetCursorScreenPos = SetCursorScreenPos; // IMGUI_API void AlignTextToFramePadding(); // vertically align/lower upcoming text to FramePadding.y so that it will aligns to upcoming widgets (call if you have text on a line before regular widgets) -var bind_imgui_42 = require("./bind-imgui"); -exports.AlignTextToFramePadding = bind_imgui_42.AlignTextToFramePadding; +var bind_imgui_47 = require("./bind-imgui"); +exports.AlignTextToFramePadding = bind_imgui_47.AlignTextToFramePadding; // IMGUI_API float GetTextLineHeight(); // ~ FontSize -var bind_imgui_43 = require("./bind-imgui"); -exports.GetTextLineHeight = bind_imgui_43.GetTextLineHeight; +var bind_imgui_48 = require("./bind-imgui"); +exports.GetTextLineHeight = bind_imgui_48.GetTextLineHeight; // IMGUI_API float GetTextLineHeightWithSpacing(); // ~ FontSize + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of text) -var bind_imgui_44 = require("./bind-imgui"); -exports.GetTextLineHeightWithSpacing = bind_imgui_44.GetTextLineHeightWithSpacing; +var bind_imgui_49 = require("./bind-imgui"); +exports.GetTextLineHeightWithSpacing = bind_imgui_49.GetTextLineHeightWithSpacing; // IMGUI_API float GetFrameHeight(); // ~ FontSize + style.FramePadding.y * 2 -var bind_imgui_45 = require("./bind-imgui"); -exports.GetFrameHeight = bind_imgui_45.GetFrameHeight; +var bind_imgui_50 = require("./bind-imgui"); +exports.GetFrameHeight = bind_imgui_50.GetFrameHeight; // IMGUI_API float GetFrameHeightWithSpacing(); // ~ FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets) -var bind_imgui_46 = require("./bind-imgui"); -exports.GetFrameHeightWithSpacing = bind_imgui_46.GetFrameHeightWithSpacing; +var bind_imgui_51 = require("./bind-imgui"); +exports.GetFrameHeightWithSpacing = bind_imgui_51.GetFrameHeightWithSpacing; // Columns // You can also use SameLine(pos_x) for simplified columns. The columns API is still work-in-progress and rather lacking. // IMGUI_API void Columns(int count = 1, const char* id = NULL, bool border = true); @@ -1607,30 +1733,30 @@ } exports.Columns = Columns; // IMGUI_API void NextColumn(); // next column, defaults to current row or next row if the current row is finished -var bind_imgui_47 = require("./bind-imgui"); -exports.NextColumn = bind_imgui_47.NextColumn; +var bind_imgui_52 = require("./bind-imgui"); +exports.NextColumn = bind_imgui_52.NextColumn; // IMGUI_API int GetColumnIndex(); // get current column index -var bind_imgui_48 = require("./bind-imgui"); -exports.GetColumnIndex = bind_imgui_48.GetColumnIndex; +var bind_imgui_53 = require("./bind-imgui"); +exports.GetColumnIndex = bind_imgui_53.GetColumnIndex; // IMGUI_API float GetColumnWidth(int column_index = -1); // get column width (in pixels). pass -1 to use current column function GetColumnWidth(column_index = -1) { return bind.GetColumnWidth(column_index); } exports.GetColumnWidth = GetColumnWidth; // IMGUI_API void SetColumnWidth(int column_index, float width); // set column width (in pixels). pass -1 to use current column -var bind_imgui_49 = require("./bind-imgui"); -exports.SetColumnWidth = bind_imgui_49.SetColumnWidth; +var bind_imgui_54 = require("./bind-imgui"); +exports.SetColumnWidth = bind_imgui_54.SetColumnWidth; // IMGUI_API float GetColumnOffset(int column_index = -1); // get position of column line (in pixels, from the left side of the contents region). pass -1 to use current column, otherwise 0..GetColumnsCount() inclusive. column 0 is typically 0.0f function GetColumnOffset(column_index = -1) { return bind.GetColumnOffset(column_index); } exports.GetColumnOffset = GetColumnOffset; // IMGUI_API void SetColumnOffset(int column_index, float offset_x); // set position of column line (in pixels, from the left side of the contents region). pass -1 to use current column -var bind_imgui_50 = require("./bind-imgui"); -exports.SetColumnOffset = bind_imgui_50.SetColumnOffset; +var bind_imgui_55 = require("./bind-imgui"); +exports.SetColumnOffset = bind_imgui_55.SetColumnOffset; // IMGUI_API int GetColumnsCount(); -var bind_imgui_51 = require("./bind-imgui"); -exports.GetColumnsCount = bind_imgui_51.GetColumnsCount; +var bind_imgui_56 = require("./bind-imgui"); +exports.GetColumnsCount = bind_imgui_56.GetColumnsCount; // ID scopes // If you are creating widgets in a loop you most likely want to push a unique identifier (e.g. object pointer, loop index) so ImGui can differentiate them. // You can also use the "##foobar" syntax within widget label to distinguish them from each others. Read "A primer on the use of labels/IDs" in the FAQ for more details. @@ -1638,16 +1764,16 @@ // IMGUI_API void PushID(const char* str_id_begin, const char* str_id_end); // IMGUI_API void PushID(const void* ptr_id); // IMGUI_API void PushID(int int_id); -var bind_imgui_52 = require("./bind-imgui"); -exports.PushID = bind_imgui_52.PushID; +var bind_imgui_57 = require("./bind-imgui"); +exports.PushID = bind_imgui_57.PushID; // IMGUI_API void PopID(); -var bind_imgui_53 = require("./bind-imgui"); -exports.PopID = bind_imgui_53.PopID; +var bind_imgui_58 = require("./bind-imgui"); +exports.PopID = bind_imgui_58.PopID; // IMGUI_API ImGuiID GetID(const char* str_id); // calculate unique ID (hash of whole ID stack + given parameter). e.g. if you want to query into ImGuiStorage yourself // IMGUI_API ImGuiID GetID(const char* str_id_begin, const char* str_id_end); // IMGUI_API ImGuiID GetID(const void* ptr_id); -var bind_imgui_54 = require("./bind-imgui"); -exports.GetID = bind_imgui_54.GetID; +var bind_imgui_59 = require("./bind-imgui"); +exports.GetID = bind_imgui_59.GetID; // Widgets: Text // IMGUI_API void TextUnformatted(const char* text, const char* text_end = NULL); // raw text without formatting. Roughly equivalent to Text("%s", text) but: A) doesn't require null terminated string if 'text_end' is specified, B) it's faster, no memory copy is done, no buffer size limits, recommended for long chunks of text. function TextUnformatted(text) { bind.TextUnformatted(text); } @@ -1679,8 +1805,8 @@ function BulletText(fmt /*, ...args: any[]*/) { bind.BulletText(fmt /*, ...args*/); } exports.BulletText = BulletText; // IMGUI_API void Bullet(); // draw a small circle and keep the cursor on the same line. advance cursor x position by GetTreeNodeToLabelSpacing(), same distance that TreeNode() uses -var bind_imgui_55 = require("./bind-imgui"); -exports.Bullet = bind_imgui_55.Bullet; +var bind_imgui_60 = require("./bind-imgui"); +exports.Bullet = bind_imgui_60.Bullet; // Widgets: Main // IMGUI_API bool Button(const char* label, const ImVec2& size = ImVec2(0,0)); // button function Button(label, size = ImVec2.ZERO) { @@ -1688,8 +1814,8 @@ } exports.Button = Button; // IMGUI_API bool SmallButton(const char* label); // button with FramePadding=(0,0) to easily embed within text -var bind_imgui_56 = require("./bind-imgui"); -exports.SmallButton = bind_imgui_56.SmallButton; +var bind_imgui_61 = require("./bind-imgui"); +exports.SmallButton = bind_imgui_61.SmallButton; // IMGUI_API bool InvisibleButton(const char* str_id, const ImVec2& size); // button behavior without the visuals, useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.) function InvisibleButton(str_id, size) { return bind.InvisibleButton(str_id, size); @@ -1720,7 +1846,15 @@ exports.Checkbox = Checkbox; // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); function CheckboxFlags(label, flags, flags_value) { - return bind.CheckboxFlags(label, flags, flags_value); + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } + else { + const ref_flags = [flags()]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } exports.CheckboxFlags = CheckboxFlags; // IMGUI_API bool RadioButton(const char* label, bool active); @@ -1777,7 +1911,7 @@ } exports.ProgressBar = ProgressBar; // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); function BeginCombo(label, preview_value, flags = 0) { @@ -2276,17 +2410,17 @@ exports.TreeNodeEx = TreeNodeEx; // IMGUI_API void TreePush(const char* str_id); // ~ Indent()+PushId(). Already called by TreeNode() when returning true, but you can call Push/Pop yourself for layout purpose // IMGUI_API void TreePush(const void* ptr_id = NULL); // " -var bind_imgui_57 = require("./bind-imgui"); -exports.TreePush = bind_imgui_57.TreePush; +var bind_imgui_62 = require("./bind-imgui"); +exports.TreePush = bind_imgui_62.TreePush; // IMGUI_API void TreePop(); // ~ Unindent()+PopId() -var bind_imgui_58 = require("./bind-imgui"); -exports.TreePop = bind_imgui_58.TreePop; +var bind_imgui_63 = require("./bind-imgui"); +exports.TreePop = bind_imgui_63.TreePop; // IMGUI_API void TreeAdvanceToLabelPos(); // advance cursor x position by GetTreeNodeToLabelSpacing() -var bind_imgui_59 = require("./bind-imgui"); -exports.TreeAdvanceToLabelPos = bind_imgui_59.TreeAdvanceToLabelPos; +var bind_imgui_64 = require("./bind-imgui"); +exports.TreeAdvanceToLabelPos = bind_imgui_64.TreeAdvanceToLabelPos; // IMGUI_API float GetTreeNodeToLabelSpacing(); // horizontal distance preceding label when using TreeNode*() or Bullet() == (g.FontSize + style.FramePadding.x*2) for a regular unframed TreeNode -var bind_imgui_60 = require("./bind-imgui"); -exports.GetTreeNodeToLabelSpacing = bind_imgui_60.GetTreeNodeToLabelSpacing; +var bind_imgui_65 = require("./bind-imgui"); +exports.GetTreeNodeToLabelSpacing = bind_imgui_65.GetTreeNodeToLabelSpacing; // IMGUI_API void SetNextTreeNodeOpen(bool is_open, ImGuiCond cond = 0); // set next TreeNode/CollapsingHeader open state. function SetNextTreeNodeOpen(is_open, cond = 0) { bind.SetNextTreeNodeOpen(is_open, cond); @@ -2365,30 +2499,30 @@ } exports.SetTooltip = SetTooltip; // IMGUI_API void BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of contents). -var bind_imgui_61 = require("./bind-imgui"); -exports.BeginTooltip = bind_imgui_61.BeginTooltip; +var bind_imgui_66 = require("./bind-imgui"); +exports.BeginTooltip = bind_imgui_66.BeginTooltip; // IMGUI_API void EndTooltip(); -var bind_imgui_62 = require("./bind-imgui"); -exports.EndTooltip = bind_imgui_62.EndTooltip; +var bind_imgui_67 = require("./bind-imgui"); +exports.EndTooltip = bind_imgui_67.EndTooltip; // Menus // IMGUI_API bool BeginMainMenuBar(); // create and append to a full screen menu-bar. only call EndMainMenuBar() if this returns true! -var bind_imgui_63 = require("./bind-imgui"); -exports.BeginMainMenuBar = bind_imgui_63.BeginMainMenuBar; +var bind_imgui_68 = require("./bind-imgui"); +exports.BeginMainMenuBar = bind_imgui_68.BeginMainMenuBar; // IMGUI_API void EndMainMenuBar(); -var bind_imgui_64 = require("./bind-imgui"); -exports.EndMainMenuBar = bind_imgui_64.EndMainMenuBar; +var bind_imgui_69 = require("./bind-imgui"); +exports.EndMainMenuBar = bind_imgui_69.EndMainMenuBar; // IMGUI_API bool BeginMenuBar(); // append to menu-bar of current window (requires ImGuiWindowFlags_MenuBar flag set on parent window). only call EndMenuBar() if this returns true! -var bind_imgui_65 = require("./bind-imgui"); -exports.BeginMenuBar = bind_imgui_65.BeginMenuBar; +var bind_imgui_70 = require("./bind-imgui"); +exports.BeginMenuBar = bind_imgui_70.BeginMenuBar; // IMGUI_API void EndMenuBar(); -var bind_imgui_66 = require("./bind-imgui"); -exports.EndMenuBar = bind_imgui_66.EndMenuBar; +var bind_imgui_71 = require("./bind-imgui"); +exports.EndMenuBar = bind_imgui_71.EndMenuBar; // IMGUI_API bool BeginMenu(const char* label, bool enabled = true); // create a sub-menu entry. only call EndMenu() if this returns true! function BeginMenu(label, enabled = true) { return bind.BeginMenu(label, enabled); } exports.BeginMenu = BeginMenu; // IMGUI_API void EndMenu(); -var bind_imgui_67 = require("./bind-imgui"); -exports.EndMenu = bind_imgui_67.EndMenu; +var bind_imgui_72 = require("./bind-imgui"); +exports.EndMenu = bind_imgui_72.EndMenu; // IMGUI_API bool MenuItem(const char* label, const char* shortcut = NULL, bool selected = false, bool enabled = true); // return true when activated. shortcuts are displayed for convenience but not processed by ImGui at the moment // IMGUI_API bool MenuItem(const char* label, const char* shortcut, bool* p_selected, bool enabled = true); // return true when activated + toggle (*p_selected) if p_selected != NULL function MenuItem(label, shortcut = null, selected = false, enabled = true) { @@ -2412,16 +2546,16 @@ exports.MenuItem = MenuItem; // Popups // IMGUI_API void OpenPopup(const char* str_id); // call to mark popup as open (don't call every frame!). popups are closed when user click outside, or if CloseCurrentPopup() is called within a BeginPopup()/EndPopup() block. By default, Selectable()/MenuItem() are calling CloseCurrentPopup(). Popup identifiers are relative to the current ID-stack (so OpenPopup and BeginPopup needs to be at the same level). -var bind_imgui_68 = require("./bind-imgui"); -exports.OpenPopup = bind_imgui_68.OpenPopup; +var bind_imgui_73 = require("./bind-imgui"); +exports.OpenPopup = bind_imgui_73.OpenPopup; // IMGUI_API bool OpenPopupOnItemClick(const char* str_id = NULL, int mouse_button = 1); // helper to open popup when clicked on last item. return true when just opened. function OpenPopupOnItemClick(str_id = "", mouse_button = 1) { return bind.OpenPopupOnItemClick(str_id, mouse_button); } exports.OpenPopupOnItemClick = OpenPopupOnItemClick; // IMGUI_API bool BeginPopup(const char* str_id); // return true if the popup is open, and you can start outputting to it. only call EndPopup() if BeginPopup() returned true! -var bind_imgui_69 = require("./bind-imgui"); -exports.BeginPopup = bind_imgui_69.BeginPopup; +var bind_imgui_74 = require("./bind-imgui"); +exports.BeginPopup = bind_imgui_74.BeginPopup; // IMGUI_API bool BeginPopupModal(const char* name, bool* p_open = NULL, ImGuiWindowFlags extra_flags = 0); // modal dialog (block interactions behind the modal window, can't close the modal window by clicking outside) function BeginPopupModal(str_id = "", p_open = null, extra_flags = 0) { p_open = p_open || [true]; @@ -2444,14 +2578,14 @@ } exports.BeginPopupContextVoid = BeginPopupContextVoid; // IMGUI_API void EndPopup(); -var bind_imgui_70 = require("./bind-imgui"); -exports.EndPopup = bind_imgui_70.EndPopup; +var bind_imgui_75 = require("./bind-imgui"); +exports.EndPopup = bind_imgui_75.EndPopup; // IMGUI_API bool IsPopupOpen(const char* str_id); // return true if the popup is open -var bind_imgui_71 = require("./bind-imgui"); -exports.IsPopupOpen = bind_imgui_71.IsPopupOpen; +var bind_imgui_76 = require("./bind-imgui"); +exports.IsPopupOpen = bind_imgui_76.IsPopupOpen; // IMGUI_API void CloseCurrentPopup(); // close the popup we have begin-ed into. clicking on a MenuItem or Selectable automatically close the current popup. -var bind_imgui_72 = require("./bind-imgui"); -exports.CloseCurrentPopup = bind_imgui_72.CloseCurrentPopup; +var bind_imgui_77 = require("./bind-imgui"); +exports.CloseCurrentPopup = bind_imgui_77.CloseCurrentPopup; // Logging/Capture: all text output from interface is captured to tty/file/clipboard. By default, tree nodes are automatically opened during logging. // IMGUI_API void LogToTTY(int max_depth = -1); // start logging to tty function LogToTTY(max_depth = -1) { @@ -2469,11 +2603,11 @@ } exports.LogToClipboard = LogToClipboard; // IMGUI_API void LogFinish(); // stop logging (close file, etc.) -var bind_imgui_73 = require("./bind-imgui"); -exports.LogFinish = bind_imgui_73.LogFinish; +var bind_imgui_78 = require("./bind-imgui"); +exports.LogFinish = bind_imgui_78.LogFinish; // IMGUI_API void LogButtons(); // helper to display buttons for logging to tty/file/clipboard -var bind_imgui_74 = require("./bind-imgui"); -exports.LogButtons = bind_imgui_74.LogButtons; +var bind_imgui_79 = require("./bind-imgui"); +exports.LogButtons = bind_imgui_79.LogButtons; // IMGUI_API void LogText(const char* fmt, ...) IM_FMTARGS(1); // pass text data straight to log (without being displayed) function LogText(fmt) { bind.LogText(fmt); @@ -2520,67 +2654,12 @@ bind.PopClipRect(); } exports.PopClipRect = PopClipRect; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -function StyleColorsClassic(dst = null) { - if (dst === null) { - bind.StyleColorsClassic(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsClassic = StyleColorsClassic; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -function StyleColorsDark(dst = null) { - if (dst === null) { - bind.StyleColorsDark(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsDark = StyleColorsDark; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -function StyleColorsLight(dst = null) { - if (dst === null) { - bind.StyleColorsLight(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsLight = StyleColorsLight; // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) // IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window (WIP navigation branch only). Pleaase use instead of SetScrollHere(). -var bind_imgui_75 = require("./bind-imgui"); -exports.SetItemDefaultFocus = bind_imgui_75.SetItemDefaultFocus; +var bind_imgui_80 = require("./bind-imgui"); +exports.SetItemDefaultFocus = bind_imgui_80.SetItemDefaultFocus; // IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget. function SetKeyboardFocusHere(offset = 0) { bind.SetKeyboardFocusHere(offset); @@ -2593,22 +2672,28 @@ } exports.IsItemHovered = IsItemHovered; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) -var bind_imgui_76 = require("./bind-imgui"); -exports.IsItemActive = bind_imgui_76.IsItemActive; +var bind_imgui_81 = require("./bind-imgui"); +exports.IsItemActive = bind_imgui_81.IsItemActive; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +var bind_imgui_82 = require("./bind-imgui"); +exports.IsItemFocused = bind_imgui_82.IsItemFocused; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) function IsItemClicked(mouse_button = 0) { return bind.IsItemClicked(mouse_button); } exports.IsItemClicked = IsItemClicked; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) -var bind_imgui_77 = require("./bind-imgui"); -exports.IsItemVisible = bind_imgui_77.IsItemVisible; +var bind_imgui_83 = require("./bind-imgui"); +exports.IsItemVisible = bind_imgui_83.IsItemVisible; // IMGUI_API bool IsAnyItemHovered(); -var bind_imgui_78 = require("./bind-imgui"); -exports.IsAnyItemHovered = bind_imgui_78.IsAnyItemHovered; +var bind_imgui_84 = require("./bind-imgui"); +exports.IsAnyItemHovered = bind_imgui_84.IsAnyItemHovered; // IMGUI_API bool IsAnyItemActive(); -var bind_imgui_79 = require("./bind-imgui"); -exports.IsAnyItemActive = bind_imgui_79.IsAnyItemActive; +var bind_imgui_85 = require("./bind-imgui"); +exports.IsAnyItemActive = bind_imgui_85.IsAnyItemActive; +// IMGUI_API bool IsAnyItemFocused(); +var bind_imgui_86 = require("./bind-imgui"); +exports.IsAnyItemFocused = bind_imgui_86.IsAnyItemFocused; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space function GetItemRectMin(out = new ImVec2()) { return bind.GetItemRectMin(out); @@ -2625,8 +2710,8 @@ } exports.GetItemRectSize = GetItemRectSize; // IMGUI_API void SetItemAllowOverlap(); // allow last item to be overlapped by a subsequent item. sometimes useful with invisible buttons, selectables, etc. to catch unused area. -var bind_imgui_80 = require("./bind-imgui"); -exports.SetItemAllowOverlap = bind_imgui_80.SetItemAllowOverlap; +var bind_imgui_87 = require("./bind-imgui"); +exports.SetItemAllowOverlap = bind_imgui_87.SetItemAllowOverlap; // IMGUI_API bool IsWindowFocused(ImGuiFocusedFlags flags = 0); // is current window focused? or its root/child, depending on flags. see flags for options. function IsWindowFocused(flags = 0) { return bind.IsWindowFocused(flags); @@ -2637,12 +2722,6 @@ return bind.IsWindowHovered(flags); } exports.IsWindowHovered = IsWindowHovered; -// IMGUI_API bool IsAnyWindowFocused(); -var bind_imgui_81 = require("./bind-imgui"); -exports.IsAnyWindowFocused = bind_imgui_81.IsAnyWindowFocused; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -var bind_imgui_82 = require("./bind-imgui"); -exports.IsAnyWindowHovered = bind_imgui_82.IsAnyWindowHovered; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. function IsRectVisible(size_or_rect_min, rect_max) { @@ -2650,11 +2729,11 @@ } exports.IsRectVisible = IsRectVisible; // IMGUI_API float GetTime(); -var bind_imgui_83 = require("./bind-imgui"); -exports.GetTime = bind_imgui_83.GetTime; +var bind_imgui_88 = require("./bind-imgui"); +exports.GetTime = bind_imgui_88.GetTime; // IMGUI_API int GetFrameCount(); -var bind_imgui_84 = require("./bind-imgui"); -exports.GetFrameCount = bind_imgui_84.GetFrameCount; +var bind_imgui_89 = require("./bind-imgui"); +exports.GetFrameCount = bind_imgui_89.GetFrameCount; // IMGUI_API ImDrawList* GetOverlayDrawList(); // this draw list will be the last rendered one, useful to quickly draw overlays shapes/text function GetOverlayDrawList() { return new ImDrawList(bind.GetOverlayDrawList()); @@ -2666,13 +2745,8 @@ } exports.GetDrawListSharedData = GetDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); -var bind_imgui_85 = require("./bind-imgui"); -exports.GetStyleColorName = bind_imgui_85.GetStyleColorName; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -function CalcItemRectClosestPoint(pos, on_edge = false, outward = +0.0, out = new ImVec2()) { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} -exports.CalcItemRectClosestPoint = CalcItemRectClosestPoint; +var bind_imgui_90 = require("./bind-imgui"); +exports.GetStyleColorName = bind_imgui_90.GetStyleColorName; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); function CalcTextSize(text, text_end = null, hide_text_after_double_hash = false, wrap_width = -1, out = new ImVec2()) { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2689,8 +2763,8 @@ } exports.BeginChildFrame = BeginChildFrame; // IMGUI_API void EndChildFrame(); -var bind_imgui_86 = require("./bind-imgui"); -exports.EndChildFrame = bind_imgui_86.EndChildFrame; +var bind_imgui_91 = require("./bind-imgui"); +exports.EndChildFrame = bind_imgui_91.EndChildFrame; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); function ColorConvertU32ToFloat4(in_, out = new ImVec4()) { return bind.ColorConvertU32ToFloat4(in_, out); @@ -2702,11 +2776,11 @@ } exports.ColorConvertFloat4ToU32 = ColorConvertFloat4ToU32; // IMGUI_API void ColorConvertRGBtoHSV(float r, float g, float b, float& out_h, float& out_s, float& out_v); -var bind_imgui_87 = require("./bind-imgui"); -exports.ColorConvertRGBtoHSV = bind_imgui_87.ColorConvertRGBtoHSV; +var bind_imgui_92 = require("./bind-imgui"); +exports.ColorConvertRGBtoHSV = bind_imgui_92.ColorConvertRGBtoHSV; // IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float& out_r, float& out_g, float& out_b); -var bind_imgui_88 = require("./bind-imgui"); -exports.ColorConvertHSVtoRGB = bind_imgui_88.ColorConvertHSVtoRGB; +var bind_imgui_93 = require("./bind-imgui"); +exports.ColorConvertHSVtoRGB = bind_imgui_93.ColorConvertHSVtoRGB; // Inputs // IMGUI_API int GetKeyIndex(ImGuiKey imgui_key); // map ImGuiKey_* values into user's key index. == io.KeyMap[key] function GetKeyIndex(imgui_key) { @@ -2789,11 +2863,11 @@ } exports.ResetMouseDragDelta = ResetMouseDragDelta; // IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired cursor type, reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you -var bind_imgui_89 = require("./bind-imgui"); -exports.GetMouseCursor = bind_imgui_89.GetMouseCursor; +var bind_imgui_94 = require("./bind-imgui"); +exports.GetMouseCursor = bind_imgui_94.GetMouseCursor; // IMGUI_API void SetMouseCursor(ImGuiMouseCursor type); // set desired cursor type -var bind_imgui_90 = require("./bind-imgui"); -exports.SetMouseCursor = bind_imgui_90.SetMouseCursor; +var bind_imgui_95 = require("./bind-imgui"); +exports.SetMouseCursor = bind_imgui_95.SetMouseCursor; // IMGUI_API void CaptureKeyboardFromApp(bool capture = true); // manually override io.WantCaptureKeyboard flag next frame (said flag is entirely left for your application handle). e.g. force capture keyboard when your widget is being hovered. function CaptureKeyboardFromApp(capture = true) { return bind.CaptureKeyboardFromApp(capture); @@ -2806,40 +2880,15 @@ exports.CaptureMouseFromApp = CaptureMouseFromApp; // Helpers functions to access functions pointers in ImGui::GetIO() // IMGUI_API void* MemAlloc(size_t sz); -var bind_imgui_91 = require("./bind-imgui"); -exports.MemAlloc = bind_imgui_91.MemAlloc; -// IMGUI_API void MemFree(void* ptr); -var bind_imgui_92 = require("./bind-imgui"); -exports.MemFree = bind_imgui_92.MemFree; -// IMGUI_API const char* GetClipboardText(); -var bind_imgui_93 = require("./bind-imgui"); -exports.GetClipboardText = bind_imgui_93.GetClipboardText; -// IMGUI_API void SetClipboardText(const char* text); -var bind_imgui_94 = require("./bind-imgui"); -exports.SetClipboardText = bind_imgui_94.SetClipboardText; -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -var bind_imgui_95 = require("./bind-imgui"); -exports.GetVersion = bind_imgui_95.GetVersion; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -function CreateContext() { - return bind.CreateContext(); -} -exports.CreateContext = CreateContext; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -function DestroyContext(ctx = null) { - return bind.DestroyContext(ctx); -} -exports.DestroyContext = DestroyContext; -// IMGUI_API ImGuiContext* GetCurrentContext(); var bind_imgui_96 = require("./bind-imgui"); -exports.GetCurrentContext = bind_imgui_96.GetCurrentContext; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +exports.MemAlloc = bind_imgui_96.MemAlloc; +// IMGUI_API void MemFree(void* ptr); var bind_imgui_97 = require("./bind-imgui"); -exports.SetCurrentContext = bind_imgui_97.SetCurrentContext; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBMEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file +exports.MemFree = bind_imgui_97.MemFree; +// IMGUI_API const char* GetClipboardText(); +var bind_imgui_98 = require("./bind-imgui"); +exports.GetClipboardText = bind_imgui_98.GetClipboardText; +// IMGUI_API void SetClipboardText(const char* text); +var bind_imgui_99 = require("./bind-imgui"); +exports.SetClipboardText = bind_imgui_99.SetClipboardText; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBNEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file diff --git a/imgui.ts b/imgui.ts index 8661239..cde5a2b 100644 --- a/imgui.ts +++ b/imgui.ts @@ -32,6 +32,8 @@ export { ImGuiHoveredFlags, ImGuiHoveredFlags as HoveredFlags } from "./bind-imgui"; export { ImGuiDragDropFlags, ImGuiDragDropFlags as DragDropFlags } from "./bind-imgui"; export { ImGuiKey, ImGuiKey as Key } from "./bind-imgui"; +export { ImGuiNavInput, ImGuiNavInput as NavInput } from "./bind-imgui"; +export { ImGuiNavFlags, ImGuiNavFlags as NavFlags } from "./bind-imgui"; export { ImGuiCol, ImGuiCol as Col } from "./bind-imgui"; export { ImGuiStyleVar, ImGuiStyleVar as StyleVar } from "./bind-imgui"; export { ImGuiColorEditFlags, ImGuiColorEditFlags as ColorEditFlags } from "./bind-imgui"; @@ -146,7 +148,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -254,7 +256,7 @@ // Filters.resize(0); // TextRange input_range(InputBuf, InputBuf+strlen(InputBuf)); // input_range.split(',', Filters); - + this.CountGrep = 0; // for (int i = 0; i != Filters.Size; i++) // { @@ -296,7 +298,7 @@ // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -354,7 +356,7 @@ // ImGuiID SourceId; // Source item id // ImGuiID SourceParentId; // Source parent id (if available) // int DataFrameCount; // Data timestamp - // char DataType[8 + 1]; // Data type tag (short user-supplied string) + // char DataType[12 + 1]; // Data type tag (short user-supplied string, 12 characters max) // bool Preview; // Set when AcceptDragDropPayload() was called and mouse has been hovering the target item (nb: handle overlapping drag targets) // bool Delivery; // Set when AcceptDragDropPayload() was called and mouse button is released over the target item. @@ -499,12 +501,12 @@ public HasSelection(): boolean { return this.native.HasSelection(); } } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData { - constructor(public native: bind.ImGuiSizeConstraintCallbackData) {} +export class ImGuiSizeCallbackData { + constructor(public native: bind.ImGuiSizeCallbackData) {} delete(): void { if (this.native) { this.native.delete(); delete this.native; } } get UserData(): any { return this.native.UserData; } @@ -624,7 +626,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif @@ -667,7 +669,7 @@ get IdxBuffer(): Uint8Array { return this.native.IdxBuffer; } // ImVector VtxBuffer; // Vertex buffer. get VtxBuffer(): Uint8Array { return this.native.VtxBuffer; } - + // [Internal, used while building lists] // ImDrawListFlags Flags; // Flags, you may poke into these to adjust anti-aliasing settings per-primitive. // const ImDrawListSharedData* _Data; // Pointer to shared draw data (you can use ImGui::GetDrawListSharedData() to get the one from current ImGui context) @@ -681,7 +683,7 @@ // int _ChannelsCurrent; // [Internal] current channel number (0) // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) - + // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -855,6 +857,8 @@ // float U0, V0, U1, V1; // Texture coordinates } +export { ImFontAtlasFlags } from "./bind-imgui"; + // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -879,10 +883,10 @@ // IMGUI_API void ClearInputData(); // Clear the input TTF data (inc sizes, glyph ranges) // IMGUI_API void ClearFonts(); // Clear the ImGui-side font data (glyphs storage, UV coordinates) // IMGUI_API void Clear(); // Clear all - + // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -1021,44 +1025,45 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle implements bind.interface_ImGuiStyle { - Alpha: number = 1.0; // Global alpha applies to everything in ImGui - private WindowPadding: ImVec2 = new ImVec2(8,8); // Padding within a window + Alpha: number = 1.0; + private WindowPadding: ImVec2 = new ImVec2(8,8); getWindowPadding(): bind.interface_ImVec2 { return this.WindowPadding; } - WindowRounding: number = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - WindowBorderSize: number = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private WindowMinSize: ImVec2 = new ImVec2(32,32); // Minimum window size + WindowRounding: number = 7.0; + WindowBorderSize: number = 0.0; + private WindowMinSize: ImVec2 = new ImVec2(32,32); getWindowMinSize(): bind.interface_ImVec2 { return this.WindowMinSize; } - private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. + private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); getWindowTitleAlign(): bind.interface_ImVec2 { return this.WindowTitleAlign; } - ChildRounding: number = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - ChildBorderSize: number = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - PopupRounding: number = 0.0; // Radius of popup window corners rounding. - PopupBorderSize: number = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private FramePadding: ImVec2 = new ImVec2(4,3); // Padding within a framed rectangle (used by most widgets) + ChildRounding: number = 0.0; + ChildBorderSize: number = 1.0; + PopupRounding: number = 0.0; + PopupBorderSize: number = 1.0; + private FramePadding: ImVec2 = new ImVec2(4,3); getFramePadding(): bind.interface_ImVec2 { return this.FramePadding; } - FrameRounding: number = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - FrameBorderSize: number = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private ItemSpacing: ImVec2 = new ImVec2(8,4); // Horizontal and vertical spacing between widgets/lines + FrameRounding: number = 0.0; + FrameBorderSize: number = 0.0; + private ItemSpacing: ImVec2 = new ImVec2(8,4); getItemSpacing(): bind.interface_ImVec2 { return this.ItemSpacing; } - private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); getItemInnerSpacing(): bind.interface_ImVec2 { return this.ItemInnerSpacing; } - private TouchExtraPadding: ImVec2 = new ImVec2(0,0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! + private TouchExtraPadding: ImVec2 = new ImVec2(0,0); getTouchExtraPadding(): bind.interface_ImVec2 { return this.TouchExtraPadding; } - IndentSpacing: number = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - ColumnsMinSpacing: number = 6.0; // Minimum horizontal spacing between two columns - ScrollbarSize: number = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - ScrollbarRounding: number = 9.0; // Radius of grab corners for scrollbar - GrabMinSize: number = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - GrabRounding: number = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. + IndentSpacing: number = 21.0; + ColumnsMinSpacing: number = 6.0; + ScrollbarSize: number = 16.0; + ScrollbarRounding: number = 9.0; + GrabMinSize: number = 10.0; + GrabRounding: number = 0.0; + private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); getButtonTextAlign(): bind.interface_ImVec2 { return this.ButtonTextAlign; } - private DisplayWindowPadding: ImVec2 = new ImVec2(22,22);// Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. + private DisplayWindowPadding: ImVec2 = new ImVec2(22,22); getDisplayWindowPadding(): bind.interface_ImVec2 { return this.DisplayWindowPadding; } - private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4);// If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. + private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4); getDisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.DisplaySafeAreaPadding; } - AntiAliasedLines: boolean = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - AntiAliasedFill: boolean = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - CurveTessellationTol: number = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + MouseCursorScale: number = 1; + AntiAliasedLines: boolean = true; + AntiAliasedFill: boolean = true; + CurveTessellationTol: number = 1.25; private Colors: ImVec4[] = []; getColorsAt(index: number): bind.interface_ImVec4 { return this.Colors[index]; } setColorsAt(index: number, color: Readonly): boolean { this.Colors[index].Copy(color); return true; } @@ -1116,6 +1121,7 @@ get ButtonTextAlign(): bind.interface_ImVec2 { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding(): bind.interface_ImVec2 { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale(): number { return this.internal.MouseCursorScale; } set MouseCursorScale(value: number) { this.internal.MouseCursorScale = value; } get AntiAliasedLines(): boolean { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value: boolean) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill(): boolean { return this.internal.AntiAliasedFill; } set AntiAliasedFill(value: boolean) { this.internal.AntiAliasedFill = value; } get CurveTessellationTol(): number { return this.internal.CurveTessellationTol; } set CurveTessellationTol(value: number) { this.internal.CurveTessellationTol = value; } @@ -1155,6 +1161,7 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; @@ -1187,6 +1194,9 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags(): bind.ImGuiNavFlags { return this.native.NavFlags; } + set NavFlags(value: bind.ImGuiNavFlags) { this.native.NavFlags = value; } // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -1267,6 +1277,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public get MouseWheel(): number { return this.native.MouseWheel; } public set MouseWheel(value: number) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public get MouseWheelH(): number { return this.native.MouseWheelH; } + public set MouseWheelH(value: number) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor(): boolean { return this.native.MouseDrawCursor; } set MouseDrawCursor(value: boolean) { this.native.MouseDrawCursor = value; } // bool KeyCtrl; // Keyboard modifier pressed: Control @@ -1288,7 +1301,17 @@ } }); // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. - + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public NavInputs: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target: number[], key: PropertyKey, value: number): boolean => { + return this.native.setNavInputsAt(Number(key), value); + } + }); + // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] public AddInputCharacter(c: number): void { this.native.AddInputCharacter(c); } @@ -1299,7 +1322,7 @@ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse(): boolean { return this.native.WantCaptureMouse; } set WantCaptureMouse(value: boolean) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. get WantCaptureKeyboard(): boolean { return this.native.WantCaptureKeyboard; } set WantCaptureKeyboard(value: boolean) { this.native.WantCaptureKeyboard = value; } @@ -1307,6 +1330,10 @@ get WantTextInput(): boolean { return this.native.WantTextInput; } set WantTextInput(value: boolean) { this.native.WantTextInput = value; } // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse(): boolean { return this.native.WantMoveMouse; } set WantMoveMouse(value: boolean) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive(): boolean { return this.native.NavActive; } set NavActive(value: boolean) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible(): boolean { return this.native.NavVisible; } set NavVisible(value: boolean) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate(): number { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1322,6 +1349,13 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + public MouseClickedPos: Readonly[] = new Proxy([], { + get: (target: Readonly[], key: PropertyKey): number | Readonly => { + if (key === "length") { return 5; } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1345,10 +1379,34 @@ } }); // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public NavInputsDownDuration: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(shared_font_atlas: ImFontAtlas | null = null): bind.ImGuiContext | null { + return bind.CreateContext(); +} +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { + return bind.DestroyContext(ctx); +} +// IMGUI_API ImGuiContext* GetCurrentContext(); +export { GetCurrentContext } from "./bind-imgui"; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export { SetCurrentContext } from "./bind-imgui"; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): ImGuiIO { return new ImGuiIO(bind.GetIO()); } @@ -1374,8 +1432,6 @@ } // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void { bind.EndFrame(); } -// IMGUI_API void Shutdown(); -export function Shutdown(): void { bind.Shutdown(); } // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1414,6 +1470,55 @@ export function ShowFontSelector(label: string): void { bind.ShowFontSelector(label); } // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void { bind.ShowUserGuide(); } +// IMGUI_API const char* GetVersion(); +export { GetVersion } from "./bind-imgui"; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsClassic(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsDark(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsLight(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1494,8 +1599,8 @@ // IMGUI_API void SetNextWindowSizeConstraints(const ImVec2& size_min, const ImVec2& size_max, ImGuiSizeConstraintCallback custom_callback = NULL, void* custom_callback_data = NULL); // set next window size limits. use -1,-1 on either X/Y axis to preserve the current size. Use callback to apply non-trivial programmatic constraints. export function SetNextWindowSizeConstraints(size_min: Readonly, size_max: Readonly, custom_callback: ImGuiSizeConstraintCallback | null = null, custom_callback_data: any = null): void { if (custom_callback) { - function _custom_callback(data: bind.ImGuiSizeConstraintCallbackData): void { - const _data: ImGuiSizeConstraintCallbackData = new ImGuiSizeConstraintCallbackData(data); + function _custom_callback(data: bind.ImGuiSizeCallbackData): void { + const _data: ImGuiSizeCallbackData = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1514,8 +1619,10 @@ } // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() export { SetNextWindowFocus } from "./bind-imgui"; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +export { SetNextWindowBgAlpha } from "./bind-imgui"; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1793,8 +1900,15 @@ } } // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); -export function CheckboxFlags(label: string, flags: bind.ImScalar, flags_value: number): boolean { - return bind.CheckboxFlags(label, flags, flags_value); +export function CheckboxFlags(label: string, flags: bind.ImAccess | bind.ImScalar, flags_value: number): boolean { + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } else { + const ref_flags: bind.ImScalar = [ flags() ]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } // IMGUI_API bool RadioButton(const char* label, bool active); // IMGUI_API bool RadioButton(const char* label, int* v, int v_button); @@ -1842,7 +1956,7 @@ } // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); export function BeginCombo(label: string, preview_value: string | null, flags: bind.ImGuiComboFlags = 0): boolean { @@ -2473,53 +2587,6 @@ bind.PopClipRect(); } -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsClassic(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsDark(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsLight(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2537,6 +2604,8 @@ } // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export { IsItemActive } from "./bind-imgui"; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export { IsItemFocused } from "./bind-imgui"; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number = 0): boolean { return bind.IsItemClicked(mouse_button); @@ -2547,6 +2616,8 @@ export { IsAnyItemHovered } from "./bind-imgui"; // IMGUI_API bool IsAnyItemActive(); export { IsAnyItemActive } from "./bind-imgui"; +// IMGUI_API bool IsAnyItemFocused(); +export { IsAnyItemFocused } from "./bind-imgui"; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.GetItemRectMin(out); @@ -2569,10 +2640,6 @@ export function IsWindowHovered(flags: bind.ImGuiHoveredFlags = 0): boolean { return bind.IsWindowHovered(flags); } -// IMGUI_API bool IsAnyWindowFocused(); -export { IsAnyWindowFocused } from "./bind-imgui"; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export { IsAnyWindowHovered } from "./bind-imgui"; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean { @@ -2592,10 +2659,6 @@ } // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export { GetStyleColorName } from "./bind-imgui"; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean = false, outward: number = +0.0, out: bind.interface_ImVec2 = new ImVec2()): typeof out { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null = null, hide_text_after_double_hash: boolean = false, wrap_width: number = -1, out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2712,24 +2775,3 @@ export { GetClipboardText } from "./bind-imgui"; // IMGUI_API void SetClipboardText(const char* text); export { SetClipboardText } from "./bind-imgui"; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export { GetVersion } from "./bind-imgui"; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -export function CreateContext(): bind.ImGuiContext | null { - return bind.CreateContext(); -} -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { - return bind.DestroyContext(ctx); -} -// IMGUI_API ImGuiContext* GetCurrentContext(); -export { GetCurrentContext } from "./bind-imgui"; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export { SetCurrentContext } from "./bind-imgui"; diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/imgui b/imgui index e916310..41ecebf 160000 --- a/imgui +++ b/imgui @@ -1 +1 @@ -Subproject commit e916310b2e1f9cacbb2b9ce192a3dfb359e4b509 +Subproject commit 41ecebff5a63b1fa71ad0d1ef6f1e6d3d39ef07d diff --git a/imgui.js b/imgui.js index 0fc91d6..686abff 100644 --- a/imgui.js +++ b/imgui.js @@ -129,7 +129,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -272,7 +272,7 @@ exports.ImGuiTextBuffer = ImGuiTextBuffer; // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -420,7 +420,7 @@ exports.ImGuiTextEditCallbackData = ImGuiTextEditCallbackData; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -class ImGuiSizeConstraintCallbackData { +class ImGuiSizeCallbackData { constructor(native) { this.native = native; } @@ -433,7 +433,7 @@ get CurrentSize() { return this.native.getCurrentSize(); } get DesiredSize() { return this.native.getDesiredSize(); } } -exports.ImGuiSizeConstraintCallbackData = ImGuiSizeConstraintCallbackData; +exports.ImGuiSizeCallbackData = ImGuiSizeCallbackData; class ImGuiListClipper { get StartPosY() { return this.native.StartPosY; } get ItemsHeight() { return this.native.ItemsHeight; } @@ -524,7 +524,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif // Draw channels are used by the Columns API to "split" the render list into different channels while building, so items of each column can be batched together. @@ -681,6 +681,8 @@ class ImFontGlyph { } exports.ImFontGlyph = ImFontGlyph; +var bind_imgui_9 = require("./bind-imgui"); +exports.ImFontAtlasFlags = bind_imgui_9.ImFontAtlasFlags; // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -707,7 +709,7 @@ // IMGUI_API void Clear(); // Clear all // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -815,36 +817,37 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle { constructor() { - this.Alpha = 1.0; // Global alpha applies to everything in ImGui - this.WindowPadding = new ImVec2(8, 8); // Padding within a window - this.WindowRounding = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - this.WindowBorderSize = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.WindowMinSize = new ImVec2(32, 32); // Minimum window size - this.WindowTitleAlign = new ImVec2(0.0, 0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. - this.ChildRounding = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - this.ChildBorderSize = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.PopupRounding = 0.0; // Radius of popup window corners rounding. - this.PopupBorderSize = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.FramePadding = new ImVec2(4, 3); // Padding within a framed rectangle (used by most widgets) - this.FrameRounding = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - this.FrameBorderSize = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.ItemSpacing = new ImVec2(8, 4); // Horizontal and vertical spacing between widgets/lines - this.ItemInnerSpacing = new ImVec2(4, 4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) - this.TouchExtraPadding = new ImVec2(0, 0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! - this.IndentSpacing = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - this.ColumnsMinSpacing = 6.0; // Minimum horizontal spacing between two columns - this.ScrollbarSize = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - this.ScrollbarRounding = 9.0; // Radius of grab corners for scrollbar - this.GrabMinSize = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - this.GrabRounding = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - this.ButtonTextAlign = new ImVec2(0.5, 0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. - this.DisplayWindowPadding = new ImVec2(22, 22); // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. - this.DisplaySafeAreaPadding = new ImVec2(4, 4); // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. - this.AntiAliasedLines = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - this.AntiAliasedFill = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - this.CurveTessellationTol = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + this.Alpha = 1.0; + this.WindowPadding = new ImVec2(8, 8); + this.WindowRounding = 7.0; + this.WindowBorderSize = 0.0; + this.WindowMinSize = new ImVec2(32, 32); + this.WindowTitleAlign = new ImVec2(0.0, 0.5); + this.ChildRounding = 0.0; + this.ChildBorderSize = 1.0; + this.PopupRounding = 0.0; + this.PopupBorderSize = 1.0; + this.FramePadding = new ImVec2(4, 3); + this.FrameRounding = 0.0; + this.FrameBorderSize = 0.0; + this.ItemSpacing = new ImVec2(8, 4); + this.ItemInnerSpacing = new ImVec2(4, 4); + this.TouchExtraPadding = new ImVec2(0, 0); + this.IndentSpacing = 21.0; + this.ColumnsMinSpacing = 6.0; + this.ScrollbarSize = 16.0; + this.ScrollbarRounding = 9.0; + this.GrabMinSize = 10.0; + this.GrabRounding = 0.0; + this.ButtonTextAlign = new ImVec2(0.5, 0.5); + this.DisplayWindowPadding = new ImVec2(22, 22); + this.DisplaySafeAreaPadding = new ImVec2(4, 4); + this.MouseCursorScale = 1; + this.AntiAliasedLines = true; + this.AntiAliasedFill = true; + this.CurveTessellationTol = 1.25; this.Colors = []; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i] = new ImVec4(); } const _this = new ImGuiStyle(this); @@ -883,7 +886,7 @@ this.Colors = new Proxy([], { get: (target, key) => { if (key === "length") { - return 43 /* COUNT */; + return 45 /* COUNT */; } return this.internal.getColorsAt(Number(key)); }, @@ -932,6 +935,8 @@ get ButtonTextAlign() { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding() { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding() { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale() { return this.internal.MouseCursorScale; } + set MouseCursorScale(value) { this.internal.MouseCursorScale = value; } get AntiAliasedLines() { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill() { return this.internal.AntiAliasedFill; } @@ -964,10 +969,11 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i].Copy(other.Colors[i]); } return this; @@ -980,9 +986,6 @@ class ImGuiIO { constructor(native) { this.native = native; - // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. - // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. - // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -990,7 +993,7 @@ this.KeyMap = new Proxy([], { get: (target, key) => { if (key === "length") { - return 19 /* COUNT */; + return 21 /* COUNT */; } return this.native.getKeyMapAt(Number(key)); }, @@ -1022,11 +1025,33 @@ return this.native.setKeysDownAt(Number(key), value); } }); + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + this.NavInputs = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target, key, value) => { + return this.native.setNavInputsAt(Number(key), value); + } + }); //------------------------------------------------------------------ // [Internal] ImGui will maintain those fields. Forward compatibility not guaranteed! //------------------------------------------------------------------ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + this.MouseClickedPos = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 5; + } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1053,6 +1078,16 @@ return this.native.getKeysDownDurationAt(Number(key)); } }); + // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + this.NavInputsDownDuration = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); } //------------------------------------------------------------------ // Settings (fill once) // Default value: @@ -1062,6 +1097,12 @@ // float DeltaTime; // = 1.0f/60.0f // Time elapsed since last frame, in seconds. get DeltaTime() { return this.native.DeltaTime; } set DeltaTime(value) { this.native.DeltaTime = value; } + // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. + // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. + // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags() { return this.native.NavFlags; } + set NavFlags(value) { this.native.NavFlags = value; } // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). // float KeyRepeatRate; // = 0.050f // When holding a key/button, rate at which it repeats, in seconds. // void* UserData; // = NULL // Store your own data for retrieval by callbacks. @@ -1110,6 +1151,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. get MouseWheel() { return this.native.MouseWheel; } set MouseWheel(value) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + get MouseWheelH() { return this.native.MouseWheelH; } + set MouseWheelH(value) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor() { return this.native.MouseDrawCursor; } set MouseDrawCursor(value) { this.native.MouseDrawCursor = value; } @@ -1125,7 +1169,6 @@ // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows get KeySuper() { return this.native.KeySuper; } set KeySuper(value) { this.native.KeySuper = value; } - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] AddInputCharacter(c) { this.native.AddInputCharacter(c); } @@ -1134,7 +1177,7 @@ //------------------------------------------------------------------ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse() { return this.native.WantCaptureMouse; } set WantCaptureMouse(value) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. @@ -1146,6 +1189,12 @@ // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse() { return this.native.WantMoveMouse; } set WantMoveMouse(value) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive() { return this.native.NavActive; } + set NavActive(value) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible() { return this.native.NavVisible; } + set NavVisible(value) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate() { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1156,6 +1205,25 @@ get MouseDelta() { return this.native.getMouseDelta(); } } exports.ImGuiIO = ImGuiIO; +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +function CreateContext(shared_font_atlas = null) { + return bind.CreateContext(); +} +exports.CreateContext = CreateContext; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +function DestroyContext(ctx = null) { + return bind.DestroyContext(ctx); +} +exports.DestroyContext = DestroyContext; +// IMGUI_API ImGuiContext* GetCurrentContext(); +var bind_imgui_10 = require("./bind-imgui"); +exports.GetCurrentContext = bind_imgui_10.GetCurrentContext; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +var bind_imgui_11 = require("./bind-imgui"); +exports.SetCurrentContext = bind_imgui_11.SetCurrentContext; // Main // IMGUI_API ImGuiIO& GetIO(); function GetIO() { return new ImGuiIO(bind.GetIO()); } @@ -1187,9 +1255,6 @@ // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! function EndFrame() { bind.EndFrame(); } exports.EndFrame = EndFrame; -// IMGUI_API void Shutdown(); -function Shutdown() { bind.Shutdown(); } -exports.Shutdown = Shutdown; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! function ShowDemoWindow(p_open = null) { bind.ShowDemoWindow(p_open); } @@ -1237,6 +1302,64 @@ // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). function ShowUserGuide() { bind.ShowUserGuide(); } exports.ShowUserGuide = ShowUserGuide; +// IMGUI_API const char* GetVersion(); +var bind_imgui_12 = require("./bind-imgui"); +exports.GetVersion = bind_imgui_12.GetVersion; +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +function StyleColorsClassic(dst = null) { + if (dst === null) { + bind.StyleColorsClassic(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsClassic = StyleColorsClassic; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +function StyleColorsDark(dst = null) { + if (dst === null) { + bind.StyleColorsDark(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsDark = StyleColorsDark; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +function StyleColorsLight(dst = null) { + if (dst === null) { + bind.StyleColorsLight(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsLight = StyleColorsLight; // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). function Begin(name, open = null, flags = 0) { @@ -1255,8 +1378,8 @@ } exports.Begin = Begin; // IMGUI_API void End(); // finish appending to current window, pop it off the window stack. -var bind_imgui_9 = require("./bind-imgui"); -exports.End = bind_imgui_9.End; +var bind_imgui_13 = require("./bind-imgui"); +exports.End = bind_imgui_13.End; // IMGUI_API bool BeginChild(const char* str_id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // begin a scrolling region. size==0.0f: use remaining window size, size<0.0f: use remaining window size minus abs(size). size>0.0f: fixed size. each axis can use a different mode, e.g. ImVec2(0,400). // IMGUI_API bool BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // " function BeginChild(id, size = ImVec2.ZERO, border = false, extra_flags = 0) { @@ -1279,8 +1402,8 @@ } exports.GetContentRegionAvail = GetContentRegionAvail; // IMGUI_API float GetContentRegionAvailWidth(); // -var bind_imgui_10 = require("./bind-imgui"); -exports.GetContentRegionAvailWidth = bind_imgui_10.GetContentRegionAvailWidth; +var bind_imgui_14 = require("./bind-imgui"); +exports.GetContentRegionAvailWidth = bind_imgui_14.GetContentRegionAvailWidth; // IMGUI_API ImVec2 GetWindowContentRegionMin(); // content boundaries min (roughly (0,0)-Scroll), in window coordinates function GetWindowContentRegionMin(out = new ImVec2()) { return bind.GetWindowContentRegionMin(out); @@ -1292,8 +1415,8 @@ } exports.GetWindowContentRegionMax = GetWindowContentRegionMax; // IMGUI_API float GetWindowContentRegionWidth(); // -var bind_imgui_11 = require("./bind-imgui"); -exports.GetWindowContentRegionWidth = bind_imgui_11.GetWindowContentRegionWidth; +var bind_imgui_15 = require("./bind-imgui"); +exports.GetWindowContentRegionWidth = bind_imgui_15.GetWindowContentRegionWidth; // IMGUI_API ImDrawList* GetWindowDrawList(); // get rendering command-list if you want to append your own draw primitives function GetWindowDrawList() { return new ImDrawList(bind.GetWindowDrawList()); @@ -1310,20 +1433,20 @@ } exports.GetWindowSize = GetWindowSize; // IMGUI_API float GetWindowWidth(); -var bind_imgui_12 = require("./bind-imgui"); -exports.GetWindowWidth = bind_imgui_12.GetWindowWidth; -// IMGUI_API float GetWindowHeight(); -var bind_imgui_13 = require("./bind-imgui"); -exports.GetWindowHeight = bind_imgui_13.GetWindowHeight; -// IMGUI_API bool IsWindowCollapsed(); -var bind_imgui_14 = require("./bind-imgui"); -exports.IsWindowCollapsed = bind_imgui_14.IsWindowCollapsed; -// IMGUI_API bool IsWindowAppearing(); -var bind_imgui_15 = require("./bind-imgui"); -exports.IsWindowAppearing = bind_imgui_15.IsWindowAppearing; -// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows var bind_imgui_16 = require("./bind-imgui"); -exports.SetWindowFontScale = bind_imgui_16.SetWindowFontScale; +exports.GetWindowWidth = bind_imgui_16.GetWindowWidth; +// IMGUI_API float GetWindowHeight(); +var bind_imgui_17 = require("./bind-imgui"); +exports.GetWindowHeight = bind_imgui_17.GetWindowHeight; +// IMGUI_API bool IsWindowCollapsed(); +var bind_imgui_18 = require("./bind-imgui"); +exports.IsWindowCollapsed = bind_imgui_18.IsWindowCollapsed; +// IMGUI_API bool IsWindowAppearing(); +var bind_imgui_19 = require("./bind-imgui"); +exports.IsWindowAppearing = bind_imgui_19.IsWindowAppearing; +// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows +var bind_imgui_20 = require("./bind-imgui"); +exports.SetWindowFontScale = bind_imgui_20.SetWindowFontScale; // IMGUI_API void SetNextWindowPos(const ImVec2& pos, ImGuiCond cond = 0, const ImVec2& pivot = ImVec2(0,0)); // set next window position. call before Begin(). use pivot=(0.5f,0.5f) to center on given point, etc. function SetNextWindowPos(pos, cond = 0, pivot = ImVec2.ZERO) { bind.SetNextWindowPos(pos, cond, pivot); @@ -1338,7 +1461,7 @@ function SetNextWindowSizeConstraints(size_min, size_max, custom_callback = null, custom_callback_data = null) { if (custom_callback) { function _custom_callback(data) { - const _data = new ImGuiSizeConstraintCallbackData(data); + const _data = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1360,10 +1483,13 @@ } exports.SetNextWindowCollapsed = SetNextWindowCollapsed; // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() -var bind_imgui_17 = require("./bind-imgui"); -exports.SetNextWindowFocus = bind_imgui_17.SetNextWindowFocus; +var bind_imgui_21 = require("./bind-imgui"); +exports.SetNextWindowFocus = bind_imgui_21.SetNextWindowFocus; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +var bind_imgui_22 = require("./bind-imgui"); +exports.SetNextWindowBgAlpha = bind_imgui_22.SetNextWindowBgAlpha; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1408,23 +1534,23 @@ } exports.SetWindowFocus = SetWindowFocus; // IMGUI_API float GetScrollX(); // get scrolling amount [0..GetScrollMaxX()] -var bind_imgui_18 = require("./bind-imgui"); -exports.GetScrollX = bind_imgui_18.GetScrollX; -// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] -var bind_imgui_19 = require("./bind-imgui"); -exports.GetScrollY = bind_imgui_19.GetScrollY; -// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X -var bind_imgui_20 = require("./bind-imgui"); -exports.GetScrollMaxX = bind_imgui_20.GetScrollMaxX; -// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y -var bind_imgui_21 = require("./bind-imgui"); -exports.GetScrollMaxY = bind_imgui_21.GetScrollMaxY; -// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] -var bind_imgui_22 = require("./bind-imgui"); -exports.SetScrollX = bind_imgui_22.SetScrollX; -// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] var bind_imgui_23 = require("./bind-imgui"); -exports.SetScrollY = bind_imgui_23.SetScrollY; +exports.GetScrollX = bind_imgui_23.GetScrollX; +// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] +var bind_imgui_24 = require("./bind-imgui"); +exports.GetScrollY = bind_imgui_24.GetScrollY; +// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X +var bind_imgui_25 = require("./bind-imgui"); +exports.GetScrollMaxX = bind_imgui_25.GetScrollMaxX; +// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y +var bind_imgui_26 = require("./bind-imgui"); +exports.GetScrollMaxY = bind_imgui_26.GetScrollMaxY; +// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] +var bind_imgui_27 = require("./bind-imgui"); +exports.SetScrollX = bind_imgui_27.SetScrollX; +// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] +var bind_imgui_28 = require("./bind-imgui"); +exports.SetScrollY = bind_imgui_28.SetScrollY; // IMGUI_API void SetScrollHere(float center_y_ratio = 0.5f); // adjust scrolling amount to make current cursor position visible. center_y_ratio=0.0: top, 0.5: center, 1.0: bottom. When using to make a "default/current item" visible, consider using SetItemDefaultFocus() instead. function SetScrollHere(center_y_ratio = 0.5) { bind.SetScrollHere(center_y_ratio); @@ -1482,8 +1608,8 @@ } exports.GetFont = GetFont; // IMGUI_API float GetFontSize(); // get current font size (= height in pixels) of current font with current scale applied -var bind_imgui_24 = require("./bind-imgui"); -exports.GetFontSize = bind_imgui_24.GetFontSize; +var bind_imgui_29 = require("./bind-imgui"); +exports.GetFontSize = bind_imgui_29.GetFontSize; // IMGUI_API ImVec2 GetFontTexUvWhitePixel(); // get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API function GetFontTexUvWhitePixel(out = new ImVec2()) { return bind.GetFontTexUvWhitePixel(out); @@ -1498,49 +1624,49 @@ exports.GetColorU32 = GetColorU32; // Parameters stacks (current window) // IMGUI_API void PushItemWidth(float item_width); // width of items for the common item+label case, pixels. 0.0f = default to ~2/3 of windows width, >0.0f: width in pixels, <0.0f align xx pixels to the right of window (so -1.0f always align width to the right side) -var bind_imgui_25 = require("./bind-imgui"); -exports.PushItemWidth = bind_imgui_25.PushItemWidth; +var bind_imgui_30 = require("./bind-imgui"); +exports.PushItemWidth = bind_imgui_30.PushItemWidth; // IMGUI_API void PopItemWidth(); -var bind_imgui_26 = require("./bind-imgui"); -exports.PopItemWidth = bind_imgui_26.PopItemWidth; +var bind_imgui_31 = require("./bind-imgui"); +exports.PopItemWidth = bind_imgui_31.PopItemWidth; // IMGUI_API float CalcItemWidth(); // width of item given pushed settings and current cursor position -var bind_imgui_27 = require("./bind-imgui"); -exports.CalcItemWidth = bind_imgui_27.CalcItemWidth; +var bind_imgui_32 = require("./bind-imgui"); +exports.CalcItemWidth = bind_imgui_32.CalcItemWidth; // IMGUI_API void PushTextWrapPos(float wrap_pos_x = 0.0f); // word-wrapping for Text*() commands. < 0.0f: no wrapping; 0.0f: wrap to end of window (or column); > 0.0f: wrap at 'wrap_pos_x' position in window local space function PushTextWrapPos(wrap_pos_x = 0.0) { bind.PushTextWrapPos(wrap_pos_x); } exports.PushTextWrapPos = PushTextWrapPos; // IMGUI_API void PopTextWrapPos(); -var bind_imgui_28 = require("./bind-imgui"); -exports.PopTextWrapPos = bind_imgui_28.PopTextWrapPos; +var bind_imgui_33 = require("./bind-imgui"); +exports.PopTextWrapPos = bind_imgui_33.PopTextWrapPos; // IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus); // allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets -var bind_imgui_29 = require("./bind-imgui"); -exports.PushAllowKeyboardFocus = bind_imgui_29.PushAllowKeyboardFocus; +var bind_imgui_34 = require("./bind-imgui"); +exports.PushAllowKeyboardFocus = bind_imgui_34.PushAllowKeyboardFocus; // IMGUI_API void PopAllowKeyboardFocus(); -var bind_imgui_30 = require("./bind-imgui"); -exports.PopAllowKeyboardFocus = bind_imgui_30.PopAllowKeyboardFocus; +var bind_imgui_35 = require("./bind-imgui"); +exports.PopAllowKeyboardFocus = bind_imgui_35.PopAllowKeyboardFocus; // IMGUI_API void PushButtonRepeat(bool repeat); // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame. -var bind_imgui_31 = require("./bind-imgui"); -exports.PushButtonRepeat = bind_imgui_31.PushButtonRepeat; +var bind_imgui_36 = require("./bind-imgui"); +exports.PushButtonRepeat = bind_imgui_36.PushButtonRepeat; // IMGUI_API void PopButtonRepeat(); -var bind_imgui_32 = require("./bind-imgui"); -exports.PopButtonRepeat = bind_imgui_32.PopButtonRepeat; +var bind_imgui_37 = require("./bind-imgui"); +exports.PopButtonRepeat = bind_imgui_37.PopButtonRepeat; // Cursor / Layout // IMGUI_API void Separator(); // separator, generally horizontal. inside a menu bar or in horizontal layout mode, this becomes a vertical separator. -var bind_imgui_33 = require("./bind-imgui"); -exports.Separator = bind_imgui_33.Separator; +var bind_imgui_38 = require("./bind-imgui"); +exports.Separator = bind_imgui_38.Separator; // IMGUI_API void SameLine(float pos_x = 0.0f, float spacing_w = -1.0f); // call between widgets or groups to layout them horizontally function SameLine(pos_x = 0.0, spacing_w = -1.0) { bind.SameLine(pos_x, spacing_w); } exports.SameLine = SameLine; // IMGUI_API void NewLine(); // undo a SameLine() -var bind_imgui_34 = require("./bind-imgui"); -exports.NewLine = bind_imgui_34.NewLine; +var bind_imgui_39 = require("./bind-imgui"); +exports.NewLine = bind_imgui_39.NewLine; // IMGUI_API void Spacing(); // add vertical spacing -var bind_imgui_35 = require("./bind-imgui"); -exports.Spacing = bind_imgui_35.Spacing; +var bind_imgui_40 = require("./bind-imgui"); +exports.Spacing = bind_imgui_40.Spacing; // IMGUI_API void Dummy(const ImVec2& size); // add a dummy item of given size function Dummy(size) { bind.Dummy(size); } exports.Dummy = Dummy; @@ -1551,29 +1677,29 @@ function Unindent(indent_w = 0.0) { bind.Unindent(indent_w); } exports.Unindent = Unindent; // IMGUI_API void BeginGroup(); // lock horizontal starting position + capture group bounding box into one "item" (so you can use IsItemHovered() or layout primitives such as SameLine() on whole group, etc.) -var bind_imgui_36 = require("./bind-imgui"); -exports.BeginGroup = bind_imgui_36.BeginGroup; +var bind_imgui_41 = require("./bind-imgui"); +exports.BeginGroup = bind_imgui_41.BeginGroup; // IMGUI_API void EndGroup(); -var bind_imgui_37 = require("./bind-imgui"); -exports.EndGroup = bind_imgui_37.EndGroup; +var bind_imgui_42 = require("./bind-imgui"); +exports.EndGroup = bind_imgui_42.EndGroup; // IMGUI_API ImVec2 GetCursorPos(); // cursor position is relative to window position function GetCursorPos(out = new ImVec2()) { return bind.GetCursorPos(out); } exports.GetCursorPos = GetCursorPos; // IMGUI_API float GetCursorPosX(); // " -var bind_imgui_38 = require("./bind-imgui"); -exports.GetCursorPosX = bind_imgui_38.GetCursorPosX; +var bind_imgui_43 = require("./bind-imgui"); +exports.GetCursorPosX = bind_imgui_43.GetCursorPosX; // IMGUI_API float GetCursorPosY(); // " -var bind_imgui_39 = require("./bind-imgui"); -exports.GetCursorPosY = bind_imgui_39.GetCursorPosY; +var bind_imgui_44 = require("./bind-imgui"); +exports.GetCursorPosY = bind_imgui_44.GetCursorPosY; // IMGUI_API void SetCursorPos(const ImVec2& local_pos); // " function SetCursorPos(local_pos) { bind.SetCursorPos(local_pos); } exports.SetCursorPos = SetCursorPos; // IMGUI_API void SetCursorPosX(float x); // " -var bind_imgui_40 = require("./bind-imgui"); -exports.SetCursorPosX = bind_imgui_40.SetCursorPosX; +var bind_imgui_45 = require("./bind-imgui"); +exports.SetCursorPosX = bind_imgui_45.SetCursorPosX; // IMGUI_API void SetCursorPosY(float y); // " -var bind_imgui_41 = require("./bind-imgui"); -exports.SetCursorPosY = bind_imgui_41.SetCursorPosY; +var bind_imgui_46 = require("./bind-imgui"); +exports.SetCursorPosY = bind_imgui_46.SetCursorPosY; // IMGUI_API ImVec2 GetCursorStartPos(); // initial cursor position function GetCursorStartPos(out = new ImVec2()) { return bind.GetCursorStartPos(out); } exports.GetCursorStartPos = GetCursorStartPos; @@ -1584,20 +1710,20 @@ function SetCursorScreenPos(pos) { bind.SetCursorScreenPos(pos); } exports.SetCursorScreenPos = SetCursorScreenPos; // IMGUI_API void AlignTextToFramePadding(); // vertically align/lower upcoming text to FramePadding.y so that it will aligns to upcoming widgets (call if you have text on a line before regular widgets) -var bind_imgui_42 = require("./bind-imgui"); -exports.AlignTextToFramePadding = bind_imgui_42.AlignTextToFramePadding; +var bind_imgui_47 = require("./bind-imgui"); +exports.AlignTextToFramePadding = bind_imgui_47.AlignTextToFramePadding; // IMGUI_API float GetTextLineHeight(); // ~ FontSize -var bind_imgui_43 = require("./bind-imgui"); -exports.GetTextLineHeight = bind_imgui_43.GetTextLineHeight; +var bind_imgui_48 = require("./bind-imgui"); +exports.GetTextLineHeight = bind_imgui_48.GetTextLineHeight; // IMGUI_API float GetTextLineHeightWithSpacing(); // ~ FontSize + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of text) -var bind_imgui_44 = require("./bind-imgui"); -exports.GetTextLineHeightWithSpacing = bind_imgui_44.GetTextLineHeightWithSpacing; +var bind_imgui_49 = require("./bind-imgui"); +exports.GetTextLineHeightWithSpacing = bind_imgui_49.GetTextLineHeightWithSpacing; // IMGUI_API float GetFrameHeight(); // ~ FontSize + style.FramePadding.y * 2 -var bind_imgui_45 = require("./bind-imgui"); -exports.GetFrameHeight = bind_imgui_45.GetFrameHeight; +var bind_imgui_50 = require("./bind-imgui"); +exports.GetFrameHeight = bind_imgui_50.GetFrameHeight; // IMGUI_API float GetFrameHeightWithSpacing(); // ~ FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets) -var bind_imgui_46 = require("./bind-imgui"); -exports.GetFrameHeightWithSpacing = bind_imgui_46.GetFrameHeightWithSpacing; +var bind_imgui_51 = require("./bind-imgui"); +exports.GetFrameHeightWithSpacing = bind_imgui_51.GetFrameHeightWithSpacing; // Columns // You can also use SameLine(pos_x) for simplified columns. The columns API is still work-in-progress and rather lacking. // IMGUI_API void Columns(int count = 1, const char* id = NULL, bool border = true); @@ -1607,30 +1733,30 @@ } exports.Columns = Columns; // IMGUI_API void NextColumn(); // next column, defaults to current row or next row if the current row is finished -var bind_imgui_47 = require("./bind-imgui"); -exports.NextColumn = bind_imgui_47.NextColumn; +var bind_imgui_52 = require("./bind-imgui"); +exports.NextColumn = bind_imgui_52.NextColumn; // IMGUI_API int GetColumnIndex(); // get current column index -var bind_imgui_48 = require("./bind-imgui"); -exports.GetColumnIndex = bind_imgui_48.GetColumnIndex; +var bind_imgui_53 = require("./bind-imgui"); +exports.GetColumnIndex = bind_imgui_53.GetColumnIndex; // IMGUI_API float GetColumnWidth(int column_index = -1); // get column width (in pixels). pass -1 to use current column function GetColumnWidth(column_index = -1) { return bind.GetColumnWidth(column_index); } exports.GetColumnWidth = GetColumnWidth; // IMGUI_API void SetColumnWidth(int column_index, float width); // set column width (in pixels). pass -1 to use current column -var bind_imgui_49 = require("./bind-imgui"); -exports.SetColumnWidth = bind_imgui_49.SetColumnWidth; +var bind_imgui_54 = require("./bind-imgui"); +exports.SetColumnWidth = bind_imgui_54.SetColumnWidth; // IMGUI_API float GetColumnOffset(int column_index = -1); // get position of column line (in pixels, from the left side of the contents region). pass -1 to use current column, otherwise 0..GetColumnsCount() inclusive. column 0 is typically 0.0f function GetColumnOffset(column_index = -1) { return bind.GetColumnOffset(column_index); } exports.GetColumnOffset = GetColumnOffset; // IMGUI_API void SetColumnOffset(int column_index, float offset_x); // set position of column line (in pixels, from the left side of the contents region). pass -1 to use current column -var bind_imgui_50 = require("./bind-imgui"); -exports.SetColumnOffset = bind_imgui_50.SetColumnOffset; +var bind_imgui_55 = require("./bind-imgui"); +exports.SetColumnOffset = bind_imgui_55.SetColumnOffset; // IMGUI_API int GetColumnsCount(); -var bind_imgui_51 = require("./bind-imgui"); -exports.GetColumnsCount = bind_imgui_51.GetColumnsCount; +var bind_imgui_56 = require("./bind-imgui"); +exports.GetColumnsCount = bind_imgui_56.GetColumnsCount; // ID scopes // If you are creating widgets in a loop you most likely want to push a unique identifier (e.g. object pointer, loop index) so ImGui can differentiate them. // You can also use the "##foobar" syntax within widget label to distinguish them from each others. Read "A primer on the use of labels/IDs" in the FAQ for more details. @@ -1638,16 +1764,16 @@ // IMGUI_API void PushID(const char* str_id_begin, const char* str_id_end); // IMGUI_API void PushID(const void* ptr_id); // IMGUI_API void PushID(int int_id); -var bind_imgui_52 = require("./bind-imgui"); -exports.PushID = bind_imgui_52.PushID; +var bind_imgui_57 = require("./bind-imgui"); +exports.PushID = bind_imgui_57.PushID; // IMGUI_API void PopID(); -var bind_imgui_53 = require("./bind-imgui"); -exports.PopID = bind_imgui_53.PopID; +var bind_imgui_58 = require("./bind-imgui"); +exports.PopID = bind_imgui_58.PopID; // IMGUI_API ImGuiID GetID(const char* str_id); // calculate unique ID (hash of whole ID stack + given parameter). e.g. if you want to query into ImGuiStorage yourself // IMGUI_API ImGuiID GetID(const char* str_id_begin, const char* str_id_end); // IMGUI_API ImGuiID GetID(const void* ptr_id); -var bind_imgui_54 = require("./bind-imgui"); -exports.GetID = bind_imgui_54.GetID; +var bind_imgui_59 = require("./bind-imgui"); +exports.GetID = bind_imgui_59.GetID; // Widgets: Text // IMGUI_API void TextUnformatted(const char* text, const char* text_end = NULL); // raw text without formatting. Roughly equivalent to Text("%s", text) but: A) doesn't require null terminated string if 'text_end' is specified, B) it's faster, no memory copy is done, no buffer size limits, recommended for long chunks of text. function TextUnformatted(text) { bind.TextUnformatted(text); } @@ -1679,8 +1805,8 @@ function BulletText(fmt /*, ...args: any[]*/) { bind.BulletText(fmt /*, ...args*/); } exports.BulletText = BulletText; // IMGUI_API void Bullet(); // draw a small circle and keep the cursor on the same line. advance cursor x position by GetTreeNodeToLabelSpacing(), same distance that TreeNode() uses -var bind_imgui_55 = require("./bind-imgui"); -exports.Bullet = bind_imgui_55.Bullet; +var bind_imgui_60 = require("./bind-imgui"); +exports.Bullet = bind_imgui_60.Bullet; // Widgets: Main // IMGUI_API bool Button(const char* label, const ImVec2& size = ImVec2(0,0)); // button function Button(label, size = ImVec2.ZERO) { @@ -1688,8 +1814,8 @@ } exports.Button = Button; // IMGUI_API bool SmallButton(const char* label); // button with FramePadding=(0,0) to easily embed within text -var bind_imgui_56 = require("./bind-imgui"); -exports.SmallButton = bind_imgui_56.SmallButton; +var bind_imgui_61 = require("./bind-imgui"); +exports.SmallButton = bind_imgui_61.SmallButton; // IMGUI_API bool InvisibleButton(const char* str_id, const ImVec2& size); // button behavior without the visuals, useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.) function InvisibleButton(str_id, size) { return bind.InvisibleButton(str_id, size); @@ -1720,7 +1846,15 @@ exports.Checkbox = Checkbox; // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); function CheckboxFlags(label, flags, flags_value) { - return bind.CheckboxFlags(label, flags, flags_value); + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } + else { + const ref_flags = [flags()]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } exports.CheckboxFlags = CheckboxFlags; // IMGUI_API bool RadioButton(const char* label, bool active); @@ -1777,7 +1911,7 @@ } exports.ProgressBar = ProgressBar; // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); function BeginCombo(label, preview_value, flags = 0) { @@ -2276,17 +2410,17 @@ exports.TreeNodeEx = TreeNodeEx; // IMGUI_API void TreePush(const char* str_id); // ~ Indent()+PushId(). Already called by TreeNode() when returning true, but you can call Push/Pop yourself for layout purpose // IMGUI_API void TreePush(const void* ptr_id = NULL); // " -var bind_imgui_57 = require("./bind-imgui"); -exports.TreePush = bind_imgui_57.TreePush; +var bind_imgui_62 = require("./bind-imgui"); +exports.TreePush = bind_imgui_62.TreePush; // IMGUI_API void TreePop(); // ~ Unindent()+PopId() -var bind_imgui_58 = require("./bind-imgui"); -exports.TreePop = bind_imgui_58.TreePop; +var bind_imgui_63 = require("./bind-imgui"); +exports.TreePop = bind_imgui_63.TreePop; // IMGUI_API void TreeAdvanceToLabelPos(); // advance cursor x position by GetTreeNodeToLabelSpacing() -var bind_imgui_59 = require("./bind-imgui"); -exports.TreeAdvanceToLabelPos = bind_imgui_59.TreeAdvanceToLabelPos; +var bind_imgui_64 = require("./bind-imgui"); +exports.TreeAdvanceToLabelPos = bind_imgui_64.TreeAdvanceToLabelPos; // IMGUI_API float GetTreeNodeToLabelSpacing(); // horizontal distance preceding label when using TreeNode*() or Bullet() == (g.FontSize + style.FramePadding.x*2) for a regular unframed TreeNode -var bind_imgui_60 = require("./bind-imgui"); -exports.GetTreeNodeToLabelSpacing = bind_imgui_60.GetTreeNodeToLabelSpacing; +var bind_imgui_65 = require("./bind-imgui"); +exports.GetTreeNodeToLabelSpacing = bind_imgui_65.GetTreeNodeToLabelSpacing; // IMGUI_API void SetNextTreeNodeOpen(bool is_open, ImGuiCond cond = 0); // set next TreeNode/CollapsingHeader open state. function SetNextTreeNodeOpen(is_open, cond = 0) { bind.SetNextTreeNodeOpen(is_open, cond); @@ -2365,30 +2499,30 @@ } exports.SetTooltip = SetTooltip; // IMGUI_API void BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of contents). -var bind_imgui_61 = require("./bind-imgui"); -exports.BeginTooltip = bind_imgui_61.BeginTooltip; +var bind_imgui_66 = require("./bind-imgui"); +exports.BeginTooltip = bind_imgui_66.BeginTooltip; // IMGUI_API void EndTooltip(); -var bind_imgui_62 = require("./bind-imgui"); -exports.EndTooltip = bind_imgui_62.EndTooltip; +var bind_imgui_67 = require("./bind-imgui"); +exports.EndTooltip = bind_imgui_67.EndTooltip; // Menus // IMGUI_API bool BeginMainMenuBar(); // create and append to a full screen menu-bar. only call EndMainMenuBar() if this returns true! -var bind_imgui_63 = require("./bind-imgui"); -exports.BeginMainMenuBar = bind_imgui_63.BeginMainMenuBar; +var bind_imgui_68 = require("./bind-imgui"); +exports.BeginMainMenuBar = bind_imgui_68.BeginMainMenuBar; // IMGUI_API void EndMainMenuBar(); -var bind_imgui_64 = require("./bind-imgui"); -exports.EndMainMenuBar = bind_imgui_64.EndMainMenuBar; +var bind_imgui_69 = require("./bind-imgui"); +exports.EndMainMenuBar = bind_imgui_69.EndMainMenuBar; // IMGUI_API bool BeginMenuBar(); // append to menu-bar of current window (requires ImGuiWindowFlags_MenuBar flag set on parent window). only call EndMenuBar() if this returns true! -var bind_imgui_65 = require("./bind-imgui"); -exports.BeginMenuBar = bind_imgui_65.BeginMenuBar; +var bind_imgui_70 = require("./bind-imgui"); +exports.BeginMenuBar = bind_imgui_70.BeginMenuBar; // IMGUI_API void EndMenuBar(); -var bind_imgui_66 = require("./bind-imgui"); -exports.EndMenuBar = bind_imgui_66.EndMenuBar; +var bind_imgui_71 = require("./bind-imgui"); +exports.EndMenuBar = bind_imgui_71.EndMenuBar; // IMGUI_API bool BeginMenu(const char* label, bool enabled = true); // create a sub-menu entry. only call EndMenu() if this returns true! function BeginMenu(label, enabled = true) { return bind.BeginMenu(label, enabled); } exports.BeginMenu = BeginMenu; // IMGUI_API void EndMenu(); -var bind_imgui_67 = require("./bind-imgui"); -exports.EndMenu = bind_imgui_67.EndMenu; +var bind_imgui_72 = require("./bind-imgui"); +exports.EndMenu = bind_imgui_72.EndMenu; // IMGUI_API bool MenuItem(const char* label, const char* shortcut = NULL, bool selected = false, bool enabled = true); // return true when activated. shortcuts are displayed for convenience but not processed by ImGui at the moment // IMGUI_API bool MenuItem(const char* label, const char* shortcut, bool* p_selected, bool enabled = true); // return true when activated + toggle (*p_selected) if p_selected != NULL function MenuItem(label, shortcut = null, selected = false, enabled = true) { @@ -2412,16 +2546,16 @@ exports.MenuItem = MenuItem; // Popups // IMGUI_API void OpenPopup(const char* str_id); // call to mark popup as open (don't call every frame!). popups are closed when user click outside, or if CloseCurrentPopup() is called within a BeginPopup()/EndPopup() block. By default, Selectable()/MenuItem() are calling CloseCurrentPopup(). Popup identifiers are relative to the current ID-stack (so OpenPopup and BeginPopup needs to be at the same level). -var bind_imgui_68 = require("./bind-imgui"); -exports.OpenPopup = bind_imgui_68.OpenPopup; +var bind_imgui_73 = require("./bind-imgui"); +exports.OpenPopup = bind_imgui_73.OpenPopup; // IMGUI_API bool OpenPopupOnItemClick(const char* str_id = NULL, int mouse_button = 1); // helper to open popup when clicked on last item. return true when just opened. function OpenPopupOnItemClick(str_id = "", mouse_button = 1) { return bind.OpenPopupOnItemClick(str_id, mouse_button); } exports.OpenPopupOnItemClick = OpenPopupOnItemClick; // IMGUI_API bool BeginPopup(const char* str_id); // return true if the popup is open, and you can start outputting to it. only call EndPopup() if BeginPopup() returned true! -var bind_imgui_69 = require("./bind-imgui"); -exports.BeginPopup = bind_imgui_69.BeginPopup; +var bind_imgui_74 = require("./bind-imgui"); +exports.BeginPopup = bind_imgui_74.BeginPopup; // IMGUI_API bool BeginPopupModal(const char* name, bool* p_open = NULL, ImGuiWindowFlags extra_flags = 0); // modal dialog (block interactions behind the modal window, can't close the modal window by clicking outside) function BeginPopupModal(str_id = "", p_open = null, extra_flags = 0) { p_open = p_open || [true]; @@ -2444,14 +2578,14 @@ } exports.BeginPopupContextVoid = BeginPopupContextVoid; // IMGUI_API void EndPopup(); -var bind_imgui_70 = require("./bind-imgui"); -exports.EndPopup = bind_imgui_70.EndPopup; +var bind_imgui_75 = require("./bind-imgui"); +exports.EndPopup = bind_imgui_75.EndPopup; // IMGUI_API bool IsPopupOpen(const char* str_id); // return true if the popup is open -var bind_imgui_71 = require("./bind-imgui"); -exports.IsPopupOpen = bind_imgui_71.IsPopupOpen; +var bind_imgui_76 = require("./bind-imgui"); +exports.IsPopupOpen = bind_imgui_76.IsPopupOpen; // IMGUI_API void CloseCurrentPopup(); // close the popup we have begin-ed into. clicking on a MenuItem or Selectable automatically close the current popup. -var bind_imgui_72 = require("./bind-imgui"); -exports.CloseCurrentPopup = bind_imgui_72.CloseCurrentPopup; +var bind_imgui_77 = require("./bind-imgui"); +exports.CloseCurrentPopup = bind_imgui_77.CloseCurrentPopup; // Logging/Capture: all text output from interface is captured to tty/file/clipboard. By default, tree nodes are automatically opened during logging. // IMGUI_API void LogToTTY(int max_depth = -1); // start logging to tty function LogToTTY(max_depth = -1) { @@ -2469,11 +2603,11 @@ } exports.LogToClipboard = LogToClipboard; // IMGUI_API void LogFinish(); // stop logging (close file, etc.) -var bind_imgui_73 = require("./bind-imgui"); -exports.LogFinish = bind_imgui_73.LogFinish; +var bind_imgui_78 = require("./bind-imgui"); +exports.LogFinish = bind_imgui_78.LogFinish; // IMGUI_API void LogButtons(); // helper to display buttons for logging to tty/file/clipboard -var bind_imgui_74 = require("./bind-imgui"); -exports.LogButtons = bind_imgui_74.LogButtons; +var bind_imgui_79 = require("./bind-imgui"); +exports.LogButtons = bind_imgui_79.LogButtons; // IMGUI_API void LogText(const char* fmt, ...) IM_FMTARGS(1); // pass text data straight to log (without being displayed) function LogText(fmt) { bind.LogText(fmt); @@ -2520,67 +2654,12 @@ bind.PopClipRect(); } exports.PopClipRect = PopClipRect; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -function StyleColorsClassic(dst = null) { - if (dst === null) { - bind.StyleColorsClassic(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsClassic = StyleColorsClassic; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -function StyleColorsDark(dst = null) { - if (dst === null) { - bind.StyleColorsDark(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsDark = StyleColorsDark; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -function StyleColorsLight(dst = null) { - if (dst === null) { - bind.StyleColorsLight(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsLight = StyleColorsLight; // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) // IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window (WIP navigation branch only). Pleaase use instead of SetScrollHere(). -var bind_imgui_75 = require("./bind-imgui"); -exports.SetItemDefaultFocus = bind_imgui_75.SetItemDefaultFocus; +var bind_imgui_80 = require("./bind-imgui"); +exports.SetItemDefaultFocus = bind_imgui_80.SetItemDefaultFocus; // IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget. function SetKeyboardFocusHere(offset = 0) { bind.SetKeyboardFocusHere(offset); @@ -2593,22 +2672,28 @@ } exports.IsItemHovered = IsItemHovered; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) -var bind_imgui_76 = require("./bind-imgui"); -exports.IsItemActive = bind_imgui_76.IsItemActive; +var bind_imgui_81 = require("./bind-imgui"); +exports.IsItemActive = bind_imgui_81.IsItemActive; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +var bind_imgui_82 = require("./bind-imgui"); +exports.IsItemFocused = bind_imgui_82.IsItemFocused; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) function IsItemClicked(mouse_button = 0) { return bind.IsItemClicked(mouse_button); } exports.IsItemClicked = IsItemClicked; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) -var bind_imgui_77 = require("./bind-imgui"); -exports.IsItemVisible = bind_imgui_77.IsItemVisible; +var bind_imgui_83 = require("./bind-imgui"); +exports.IsItemVisible = bind_imgui_83.IsItemVisible; // IMGUI_API bool IsAnyItemHovered(); -var bind_imgui_78 = require("./bind-imgui"); -exports.IsAnyItemHovered = bind_imgui_78.IsAnyItemHovered; +var bind_imgui_84 = require("./bind-imgui"); +exports.IsAnyItemHovered = bind_imgui_84.IsAnyItemHovered; // IMGUI_API bool IsAnyItemActive(); -var bind_imgui_79 = require("./bind-imgui"); -exports.IsAnyItemActive = bind_imgui_79.IsAnyItemActive; +var bind_imgui_85 = require("./bind-imgui"); +exports.IsAnyItemActive = bind_imgui_85.IsAnyItemActive; +// IMGUI_API bool IsAnyItemFocused(); +var bind_imgui_86 = require("./bind-imgui"); +exports.IsAnyItemFocused = bind_imgui_86.IsAnyItemFocused; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space function GetItemRectMin(out = new ImVec2()) { return bind.GetItemRectMin(out); @@ -2625,8 +2710,8 @@ } exports.GetItemRectSize = GetItemRectSize; // IMGUI_API void SetItemAllowOverlap(); // allow last item to be overlapped by a subsequent item. sometimes useful with invisible buttons, selectables, etc. to catch unused area. -var bind_imgui_80 = require("./bind-imgui"); -exports.SetItemAllowOverlap = bind_imgui_80.SetItemAllowOverlap; +var bind_imgui_87 = require("./bind-imgui"); +exports.SetItemAllowOverlap = bind_imgui_87.SetItemAllowOverlap; // IMGUI_API bool IsWindowFocused(ImGuiFocusedFlags flags = 0); // is current window focused? or its root/child, depending on flags. see flags for options. function IsWindowFocused(flags = 0) { return bind.IsWindowFocused(flags); @@ -2637,12 +2722,6 @@ return bind.IsWindowHovered(flags); } exports.IsWindowHovered = IsWindowHovered; -// IMGUI_API bool IsAnyWindowFocused(); -var bind_imgui_81 = require("./bind-imgui"); -exports.IsAnyWindowFocused = bind_imgui_81.IsAnyWindowFocused; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -var bind_imgui_82 = require("./bind-imgui"); -exports.IsAnyWindowHovered = bind_imgui_82.IsAnyWindowHovered; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. function IsRectVisible(size_or_rect_min, rect_max) { @@ -2650,11 +2729,11 @@ } exports.IsRectVisible = IsRectVisible; // IMGUI_API float GetTime(); -var bind_imgui_83 = require("./bind-imgui"); -exports.GetTime = bind_imgui_83.GetTime; +var bind_imgui_88 = require("./bind-imgui"); +exports.GetTime = bind_imgui_88.GetTime; // IMGUI_API int GetFrameCount(); -var bind_imgui_84 = require("./bind-imgui"); -exports.GetFrameCount = bind_imgui_84.GetFrameCount; +var bind_imgui_89 = require("./bind-imgui"); +exports.GetFrameCount = bind_imgui_89.GetFrameCount; // IMGUI_API ImDrawList* GetOverlayDrawList(); // this draw list will be the last rendered one, useful to quickly draw overlays shapes/text function GetOverlayDrawList() { return new ImDrawList(bind.GetOverlayDrawList()); @@ -2666,13 +2745,8 @@ } exports.GetDrawListSharedData = GetDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); -var bind_imgui_85 = require("./bind-imgui"); -exports.GetStyleColorName = bind_imgui_85.GetStyleColorName; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -function CalcItemRectClosestPoint(pos, on_edge = false, outward = +0.0, out = new ImVec2()) { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} -exports.CalcItemRectClosestPoint = CalcItemRectClosestPoint; +var bind_imgui_90 = require("./bind-imgui"); +exports.GetStyleColorName = bind_imgui_90.GetStyleColorName; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); function CalcTextSize(text, text_end = null, hide_text_after_double_hash = false, wrap_width = -1, out = new ImVec2()) { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2689,8 +2763,8 @@ } exports.BeginChildFrame = BeginChildFrame; // IMGUI_API void EndChildFrame(); -var bind_imgui_86 = require("./bind-imgui"); -exports.EndChildFrame = bind_imgui_86.EndChildFrame; +var bind_imgui_91 = require("./bind-imgui"); +exports.EndChildFrame = bind_imgui_91.EndChildFrame; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); function ColorConvertU32ToFloat4(in_, out = new ImVec4()) { return bind.ColorConvertU32ToFloat4(in_, out); @@ -2702,11 +2776,11 @@ } exports.ColorConvertFloat4ToU32 = ColorConvertFloat4ToU32; // IMGUI_API void ColorConvertRGBtoHSV(float r, float g, float b, float& out_h, float& out_s, float& out_v); -var bind_imgui_87 = require("./bind-imgui"); -exports.ColorConvertRGBtoHSV = bind_imgui_87.ColorConvertRGBtoHSV; +var bind_imgui_92 = require("./bind-imgui"); +exports.ColorConvertRGBtoHSV = bind_imgui_92.ColorConvertRGBtoHSV; // IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float& out_r, float& out_g, float& out_b); -var bind_imgui_88 = require("./bind-imgui"); -exports.ColorConvertHSVtoRGB = bind_imgui_88.ColorConvertHSVtoRGB; +var bind_imgui_93 = require("./bind-imgui"); +exports.ColorConvertHSVtoRGB = bind_imgui_93.ColorConvertHSVtoRGB; // Inputs // IMGUI_API int GetKeyIndex(ImGuiKey imgui_key); // map ImGuiKey_* values into user's key index. == io.KeyMap[key] function GetKeyIndex(imgui_key) { @@ -2789,11 +2863,11 @@ } exports.ResetMouseDragDelta = ResetMouseDragDelta; // IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired cursor type, reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you -var bind_imgui_89 = require("./bind-imgui"); -exports.GetMouseCursor = bind_imgui_89.GetMouseCursor; +var bind_imgui_94 = require("./bind-imgui"); +exports.GetMouseCursor = bind_imgui_94.GetMouseCursor; // IMGUI_API void SetMouseCursor(ImGuiMouseCursor type); // set desired cursor type -var bind_imgui_90 = require("./bind-imgui"); -exports.SetMouseCursor = bind_imgui_90.SetMouseCursor; +var bind_imgui_95 = require("./bind-imgui"); +exports.SetMouseCursor = bind_imgui_95.SetMouseCursor; // IMGUI_API void CaptureKeyboardFromApp(bool capture = true); // manually override io.WantCaptureKeyboard flag next frame (said flag is entirely left for your application handle). e.g. force capture keyboard when your widget is being hovered. function CaptureKeyboardFromApp(capture = true) { return bind.CaptureKeyboardFromApp(capture); @@ -2806,40 +2880,15 @@ exports.CaptureMouseFromApp = CaptureMouseFromApp; // Helpers functions to access functions pointers in ImGui::GetIO() // IMGUI_API void* MemAlloc(size_t sz); -var bind_imgui_91 = require("./bind-imgui"); -exports.MemAlloc = bind_imgui_91.MemAlloc; -// IMGUI_API void MemFree(void* ptr); -var bind_imgui_92 = require("./bind-imgui"); -exports.MemFree = bind_imgui_92.MemFree; -// IMGUI_API const char* GetClipboardText(); -var bind_imgui_93 = require("./bind-imgui"); -exports.GetClipboardText = bind_imgui_93.GetClipboardText; -// IMGUI_API void SetClipboardText(const char* text); -var bind_imgui_94 = require("./bind-imgui"); -exports.SetClipboardText = bind_imgui_94.SetClipboardText; -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -var bind_imgui_95 = require("./bind-imgui"); -exports.GetVersion = bind_imgui_95.GetVersion; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -function CreateContext() { - return bind.CreateContext(); -} -exports.CreateContext = CreateContext; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -function DestroyContext(ctx = null) { - return bind.DestroyContext(ctx); -} -exports.DestroyContext = DestroyContext; -// IMGUI_API ImGuiContext* GetCurrentContext(); var bind_imgui_96 = require("./bind-imgui"); -exports.GetCurrentContext = bind_imgui_96.GetCurrentContext; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +exports.MemAlloc = bind_imgui_96.MemAlloc; +// IMGUI_API void MemFree(void* ptr); var bind_imgui_97 = require("./bind-imgui"); -exports.SetCurrentContext = bind_imgui_97.SetCurrentContext; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBMEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file +exports.MemFree = bind_imgui_97.MemFree; +// IMGUI_API const char* GetClipboardText(); +var bind_imgui_98 = require("./bind-imgui"); +exports.GetClipboardText = bind_imgui_98.GetClipboardText; +// IMGUI_API void SetClipboardText(const char* text); +var bind_imgui_99 = require("./bind-imgui"); +exports.SetClipboardText = bind_imgui_99.SetClipboardText; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBNEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file diff --git a/imgui.ts b/imgui.ts index 8661239..cde5a2b 100644 --- a/imgui.ts +++ b/imgui.ts @@ -32,6 +32,8 @@ export { ImGuiHoveredFlags, ImGuiHoveredFlags as HoveredFlags } from "./bind-imgui"; export { ImGuiDragDropFlags, ImGuiDragDropFlags as DragDropFlags } from "./bind-imgui"; export { ImGuiKey, ImGuiKey as Key } from "./bind-imgui"; +export { ImGuiNavInput, ImGuiNavInput as NavInput } from "./bind-imgui"; +export { ImGuiNavFlags, ImGuiNavFlags as NavFlags } from "./bind-imgui"; export { ImGuiCol, ImGuiCol as Col } from "./bind-imgui"; export { ImGuiStyleVar, ImGuiStyleVar as StyleVar } from "./bind-imgui"; export { ImGuiColorEditFlags, ImGuiColorEditFlags as ColorEditFlags } from "./bind-imgui"; @@ -146,7 +148,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -254,7 +256,7 @@ // Filters.resize(0); // TextRange input_range(InputBuf, InputBuf+strlen(InputBuf)); // input_range.split(',', Filters); - + this.CountGrep = 0; // for (int i = 0; i != Filters.Size; i++) // { @@ -296,7 +298,7 @@ // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -354,7 +356,7 @@ // ImGuiID SourceId; // Source item id // ImGuiID SourceParentId; // Source parent id (if available) // int DataFrameCount; // Data timestamp - // char DataType[8 + 1]; // Data type tag (short user-supplied string) + // char DataType[12 + 1]; // Data type tag (short user-supplied string, 12 characters max) // bool Preview; // Set when AcceptDragDropPayload() was called and mouse has been hovering the target item (nb: handle overlapping drag targets) // bool Delivery; // Set when AcceptDragDropPayload() was called and mouse button is released over the target item. @@ -499,12 +501,12 @@ public HasSelection(): boolean { return this.native.HasSelection(); } } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData { - constructor(public native: bind.ImGuiSizeConstraintCallbackData) {} +export class ImGuiSizeCallbackData { + constructor(public native: bind.ImGuiSizeCallbackData) {} delete(): void { if (this.native) { this.native.delete(); delete this.native; } } get UserData(): any { return this.native.UserData; } @@ -624,7 +626,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif @@ -667,7 +669,7 @@ get IdxBuffer(): Uint8Array { return this.native.IdxBuffer; } // ImVector VtxBuffer; // Vertex buffer. get VtxBuffer(): Uint8Array { return this.native.VtxBuffer; } - + // [Internal, used while building lists] // ImDrawListFlags Flags; // Flags, you may poke into these to adjust anti-aliasing settings per-primitive. // const ImDrawListSharedData* _Data; // Pointer to shared draw data (you can use ImGui::GetDrawListSharedData() to get the one from current ImGui context) @@ -681,7 +683,7 @@ // int _ChannelsCurrent; // [Internal] current channel number (0) // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) - + // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -855,6 +857,8 @@ // float U0, V0, U1, V1; // Texture coordinates } +export { ImFontAtlasFlags } from "./bind-imgui"; + // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -879,10 +883,10 @@ // IMGUI_API void ClearInputData(); // Clear the input TTF data (inc sizes, glyph ranges) // IMGUI_API void ClearFonts(); // Clear the ImGui-side font data (glyphs storage, UV coordinates) // IMGUI_API void Clear(); // Clear all - + // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -1021,44 +1025,45 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle implements bind.interface_ImGuiStyle { - Alpha: number = 1.0; // Global alpha applies to everything in ImGui - private WindowPadding: ImVec2 = new ImVec2(8,8); // Padding within a window + Alpha: number = 1.0; + private WindowPadding: ImVec2 = new ImVec2(8,8); getWindowPadding(): bind.interface_ImVec2 { return this.WindowPadding; } - WindowRounding: number = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - WindowBorderSize: number = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private WindowMinSize: ImVec2 = new ImVec2(32,32); // Minimum window size + WindowRounding: number = 7.0; + WindowBorderSize: number = 0.0; + private WindowMinSize: ImVec2 = new ImVec2(32,32); getWindowMinSize(): bind.interface_ImVec2 { return this.WindowMinSize; } - private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. + private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); getWindowTitleAlign(): bind.interface_ImVec2 { return this.WindowTitleAlign; } - ChildRounding: number = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - ChildBorderSize: number = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - PopupRounding: number = 0.0; // Radius of popup window corners rounding. - PopupBorderSize: number = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private FramePadding: ImVec2 = new ImVec2(4,3); // Padding within a framed rectangle (used by most widgets) + ChildRounding: number = 0.0; + ChildBorderSize: number = 1.0; + PopupRounding: number = 0.0; + PopupBorderSize: number = 1.0; + private FramePadding: ImVec2 = new ImVec2(4,3); getFramePadding(): bind.interface_ImVec2 { return this.FramePadding; } - FrameRounding: number = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - FrameBorderSize: number = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private ItemSpacing: ImVec2 = new ImVec2(8,4); // Horizontal and vertical spacing between widgets/lines + FrameRounding: number = 0.0; + FrameBorderSize: number = 0.0; + private ItemSpacing: ImVec2 = new ImVec2(8,4); getItemSpacing(): bind.interface_ImVec2 { return this.ItemSpacing; } - private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); getItemInnerSpacing(): bind.interface_ImVec2 { return this.ItemInnerSpacing; } - private TouchExtraPadding: ImVec2 = new ImVec2(0,0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! + private TouchExtraPadding: ImVec2 = new ImVec2(0,0); getTouchExtraPadding(): bind.interface_ImVec2 { return this.TouchExtraPadding; } - IndentSpacing: number = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - ColumnsMinSpacing: number = 6.0; // Minimum horizontal spacing between two columns - ScrollbarSize: number = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - ScrollbarRounding: number = 9.0; // Radius of grab corners for scrollbar - GrabMinSize: number = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - GrabRounding: number = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. + IndentSpacing: number = 21.0; + ColumnsMinSpacing: number = 6.0; + ScrollbarSize: number = 16.0; + ScrollbarRounding: number = 9.0; + GrabMinSize: number = 10.0; + GrabRounding: number = 0.0; + private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); getButtonTextAlign(): bind.interface_ImVec2 { return this.ButtonTextAlign; } - private DisplayWindowPadding: ImVec2 = new ImVec2(22,22);// Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. + private DisplayWindowPadding: ImVec2 = new ImVec2(22,22); getDisplayWindowPadding(): bind.interface_ImVec2 { return this.DisplayWindowPadding; } - private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4);// If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. + private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4); getDisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.DisplaySafeAreaPadding; } - AntiAliasedLines: boolean = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - AntiAliasedFill: boolean = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - CurveTessellationTol: number = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + MouseCursorScale: number = 1; + AntiAliasedLines: boolean = true; + AntiAliasedFill: boolean = true; + CurveTessellationTol: number = 1.25; private Colors: ImVec4[] = []; getColorsAt(index: number): bind.interface_ImVec4 { return this.Colors[index]; } setColorsAt(index: number, color: Readonly): boolean { this.Colors[index].Copy(color); return true; } @@ -1116,6 +1121,7 @@ get ButtonTextAlign(): bind.interface_ImVec2 { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding(): bind.interface_ImVec2 { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale(): number { return this.internal.MouseCursorScale; } set MouseCursorScale(value: number) { this.internal.MouseCursorScale = value; } get AntiAliasedLines(): boolean { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value: boolean) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill(): boolean { return this.internal.AntiAliasedFill; } set AntiAliasedFill(value: boolean) { this.internal.AntiAliasedFill = value; } get CurveTessellationTol(): number { return this.internal.CurveTessellationTol; } set CurveTessellationTol(value: number) { this.internal.CurveTessellationTol = value; } @@ -1155,6 +1161,7 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; @@ -1187,6 +1194,9 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags(): bind.ImGuiNavFlags { return this.native.NavFlags; } + set NavFlags(value: bind.ImGuiNavFlags) { this.native.NavFlags = value; } // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -1267,6 +1277,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public get MouseWheel(): number { return this.native.MouseWheel; } public set MouseWheel(value: number) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public get MouseWheelH(): number { return this.native.MouseWheelH; } + public set MouseWheelH(value: number) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor(): boolean { return this.native.MouseDrawCursor; } set MouseDrawCursor(value: boolean) { this.native.MouseDrawCursor = value; } // bool KeyCtrl; // Keyboard modifier pressed: Control @@ -1288,7 +1301,17 @@ } }); // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. - + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public NavInputs: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target: number[], key: PropertyKey, value: number): boolean => { + return this.native.setNavInputsAt(Number(key), value); + } + }); + // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] public AddInputCharacter(c: number): void { this.native.AddInputCharacter(c); } @@ -1299,7 +1322,7 @@ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse(): boolean { return this.native.WantCaptureMouse; } set WantCaptureMouse(value: boolean) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. get WantCaptureKeyboard(): boolean { return this.native.WantCaptureKeyboard; } set WantCaptureKeyboard(value: boolean) { this.native.WantCaptureKeyboard = value; } @@ -1307,6 +1330,10 @@ get WantTextInput(): boolean { return this.native.WantTextInput; } set WantTextInput(value: boolean) { this.native.WantTextInput = value; } // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse(): boolean { return this.native.WantMoveMouse; } set WantMoveMouse(value: boolean) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive(): boolean { return this.native.NavActive; } set NavActive(value: boolean) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible(): boolean { return this.native.NavVisible; } set NavVisible(value: boolean) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate(): number { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1322,6 +1349,13 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + public MouseClickedPos: Readonly[] = new Proxy([], { + get: (target: Readonly[], key: PropertyKey): number | Readonly => { + if (key === "length") { return 5; } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1345,10 +1379,34 @@ } }); // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public NavInputsDownDuration: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(shared_font_atlas: ImFontAtlas | null = null): bind.ImGuiContext | null { + return bind.CreateContext(); +} +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { + return bind.DestroyContext(ctx); +} +// IMGUI_API ImGuiContext* GetCurrentContext(); +export { GetCurrentContext } from "./bind-imgui"; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export { SetCurrentContext } from "./bind-imgui"; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): ImGuiIO { return new ImGuiIO(bind.GetIO()); } @@ -1374,8 +1432,6 @@ } // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void { bind.EndFrame(); } -// IMGUI_API void Shutdown(); -export function Shutdown(): void { bind.Shutdown(); } // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1414,6 +1470,55 @@ export function ShowFontSelector(label: string): void { bind.ShowFontSelector(label); } // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void { bind.ShowUserGuide(); } +// IMGUI_API const char* GetVersion(); +export { GetVersion } from "./bind-imgui"; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsClassic(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsDark(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsLight(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1494,8 +1599,8 @@ // IMGUI_API void SetNextWindowSizeConstraints(const ImVec2& size_min, const ImVec2& size_max, ImGuiSizeConstraintCallback custom_callback = NULL, void* custom_callback_data = NULL); // set next window size limits. use -1,-1 on either X/Y axis to preserve the current size. Use callback to apply non-trivial programmatic constraints. export function SetNextWindowSizeConstraints(size_min: Readonly, size_max: Readonly, custom_callback: ImGuiSizeConstraintCallback | null = null, custom_callback_data: any = null): void { if (custom_callback) { - function _custom_callback(data: bind.ImGuiSizeConstraintCallbackData): void { - const _data: ImGuiSizeConstraintCallbackData = new ImGuiSizeConstraintCallbackData(data); + function _custom_callback(data: bind.ImGuiSizeCallbackData): void { + const _data: ImGuiSizeCallbackData = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1514,8 +1619,10 @@ } // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() export { SetNextWindowFocus } from "./bind-imgui"; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +export { SetNextWindowBgAlpha } from "./bind-imgui"; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1793,8 +1900,15 @@ } } // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); -export function CheckboxFlags(label: string, flags: bind.ImScalar, flags_value: number): boolean { - return bind.CheckboxFlags(label, flags, flags_value); +export function CheckboxFlags(label: string, flags: bind.ImAccess | bind.ImScalar, flags_value: number): boolean { + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } else { + const ref_flags: bind.ImScalar = [ flags() ]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } // IMGUI_API bool RadioButton(const char* label, bool active); // IMGUI_API bool RadioButton(const char* label, int* v, int v_button); @@ -1842,7 +1956,7 @@ } // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); export function BeginCombo(label: string, preview_value: string | null, flags: bind.ImGuiComboFlags = 0): boolean { @@ -2473,53 +2587,6 @@ bind.PopClipRect(); } -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsClassic(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsDark(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsLight(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2537,6 +2604,8 @@ } // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export { IsItemActive } from "./bind-imgui"; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export { IsItemFocused } from "./bind-imgui"; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number = 0): boolean { return bind.IsItemClicked(mouse_button); @@ -2547,6 +2616,8 @@ export { IsAnyItemHovered } from "./bind-imgui"; // IMGUI_API bool IsAnyItemActive(); export { IsAnyItemActive } from "./bind-imgui"; +// IMGUI_API bool IsAnyItemFocused(); +export { IsAnyItemFocused } from "./bind-imgui"; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.GetItemRectMin(out); @@ -2569,10 +2640,6 @@ export function IsWindowHovered(flags: bind.ImGuiHoveredFlags = 0): boolean { return bind.IsWindowHovered(flags); } -// IMGUI_API bool IsAnyWindowFocused(); -export { IsAnyWindowFocused } from "./bind-imgui"; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export { IsAnyWindowHovered } from "./bind-imgui"; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean { @@ -2592,10 +2659,6 @@ } // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export { GetStyleColorName } from "./bind-imgui"; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean = false, outward: number = +0.0, out: bind.interface_ImVec2 = new ImVec2()): typeof out { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null = null, hide_text_after_double_hash: boolean = false, wrap_width: number = -1, out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2712,24 +2775,3 @@ export { GetClipboardText } from "./bind-imgui"; // IMGUI_API void SetClipboardText(const char* text); export { SetClipboardText } from "./bind-imgui"; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export { GetVersion } from "./bind-imgui"; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -export function CreateContext(): bind.ImGuiContext | null { - return bind.CreateContext(); -} -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { - return bind.DestroyContext(ctx); -} -// IMGUI_API ImGuiContext* GetCurrentContext(); -export { GetCurrentContext } from "./bind-imgui"; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export { SetCurrentContext } from "./bind-imgui"; diff --git a/imgui_demo.js b/imgui_demo.js index 31a08cd..dc5c8d2 100644 --- a/imgui_demo.js +++ b/imgui_demo.js @@ -1,5 +1,5 @@ "use strict"; -// dear imgui, v1.53 +// dear imgui, v1.60 WIP // (demo code) Object.defineProperty(exports, "__esModule", { value: true }); // Message to the person tempted to delete this file when integrating ImGui into their code base: @@ -107,7 +107,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted(desc); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -183,7 +183,7 @@ } if (show_app_about.value) { ImGui.Begin("About Dear ImGui", (value = show_app_about.value) => show_app_about.value = value, 64 /* AlwaysAutoResize */); - ImGui.Text(`dear imgui, ${ImGui.GetVersion()}`); + ImGui.Text(`Dear ImGui, ${ImGui.GetVersion()}`); ImGui.Separator(); ImGui.Text("By Omar Cornut and all dear imgui contributors."); ImGui.Text("Dear ImGui is licensed under the MIT License, see LICENSE for more information."); @@ -196,6 +196,7 @@ /* static */ const no_resize = STATIC("no_resize", false); /* static */ const no_collapse = STATIC("no_collapse", false); /* static */ const no_close = STATIC("no_close", false); + /* static */ const no_nav = STATIC("no_nav", false); // Demonstrate the various window flags. Typically you would just use the default. let window_flags = 0; if (no_titlebar.value) @@ -210,6 +211,8 @@ window_flags |= 2 /* NoResize */; if (no_collapse.value) window_flags |= 32 /* NoCollapse */; + if (no_nav.value) + window_flags |= 786432 /* NoNav */; if (no_close.value) p_open = null; // Don't pass our bool* to Begin ImGui.SetNextWindowSize(new imgui_6.ImVec2(550, 680), 4 /* FirstUseEver */); @@ -267,6 +270,8 @@ ImGui.SameLine(300); ImGui.Checkbox("No collapse", (value = no_collapse.value) => no_collapse.value = value); ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); + ImGui.SameLine(150); + ImGui.Checkbox("No nav", (value = no_nav.value) => no_nav.value = value); if (ImGui.TreeNode("Style")) { /*ImGui.*/ ShowStyleEditor(); ImGui.TreePop(); @@ -401,8 +406,7 @@ if (ImGui.TreeNode(i.toString(), `Child ${i}`)) { ImGui.Text("blah blah"); ImGui.SameLine(); - if (ImGui.SmallButton("print")) - console.log(`Child ${i} pressed`); + if (ImGui.SmallButton("button")) { } ImGui.TreePop(); } ImGui.TreePop(); @@ -416,7 +420,7 @@ ImGui.Unindent(ImGui.GetTreeNodeToLabelSpacing()); /* static */ const selection_mask = STATIC("selection_mask", (1 << 2)); // Dumb representation of what may be user-side selection state. You may carry selection state inside or outside your objects in whatever format you see fit. let node_clicked = -1; // Temporary storage of what node we have clicked to process selection at the end of the loop. May be a pointer to your own node type, etc. - ImGui.PushStyleVar(14 /* IndentSpacing */, ImGui.GetFontSize() * 3); // Increase spacing to differentiate leaves from expanded contents. + ImGui.PushStyleVar(15 /* IndentSpacing */, ImGui.GetFontSize() * 3); // Increase spacing to differentiate leaves from expanded contents. for (let i = 0; i < 6; i++) { // Disable the default open on single-click behavior and pass in Selected flag according to our selection state. let node_flags = 128 /* OpenOnArrow */ | 64 /* OpenOnDoubleClick */ | ((selection_mask.value & (1 << i)) ? 1 /* Selected */ : 0); @@ -573,22 +577,50 @@ ImGui.SameLine(); } ImGui.NewLine(); - ImGui.Text(`Pressed ${pressed_count} times.`); + ImGui.Text(`Pressed ${pressed_count.value} times.`); ImGui.TreePop(); } if (ImGui.TreeNode("Selectables")) { + // Selectable() has 2 overloads: + // - The one taking "bool selected" as a read-only selection information. When Selectable() has been clicked is returns true and you can alter selection state accordingly. + // - The one taking "bool* p_selected" as a read-write selection information (convenient in some cases) + // The earlier is more flexible, as in real application your selection may be stored in a different manner (in flags within objects, as an external list, etc). if (ImGui.TreeNode("Basic")) { - /* static */ const selected = STATIC("selected#672", [false, true, false, false]); - ImGui.Selectable("1. I am selectable", (value = selected.value[0]) => selected.value[0] = value); - ImGui.Selectable("2. I am selectable", (value = selected.value[1]) => selected.value[1] = value); + /* static */ const selection = STATIC("selection#695", [false, true, false, false, false]); + ImGui.Selectable("1. I am selectable", (value = selection.value[0]) => selection.value[0] = value); + ImGui.Selectable("2. I am selectable", (value = selection.value[1]) => selection.value[1] = value); ImGui.Text("3. I am not selectable"); - ImGui.Selectable("4. I am selectable", (value = selected.value[2]) => selected.value[2] = value); - if (ImGui.Selectable("5. I am double clickable", selected.value[3], 4 /* AllowDoubleClick */)) + ImGui.Selectable("4. I am selectable", (value = selection.value[3]) => selection.value[2] = value); + if (ImGui.Selectable("5. I am double clickable", selection.value[4], 4 /* AllowDoubleClick */)) if (ImGui.IsMouseDoubleClicked(0)) - selected.value[3] = !selected.value[3]; + selection.value[4] = !selection.value[4]; ImGui.TreePop(); } - if (ImGui.TreeNode("Rendering more text into the same block")) { + if (ImGui.TreeNode("Selection State: Single Selection")) { + /* static */ const selected = STATIC("selected#707", -1); + for (let n = 0; n < 5; n++) { + const buf = `Object ${n}`; + if (ImGui.Selectable(buf, selected.value === n)) + selected.value = n; + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Selection State: Multiple Selection")) { + ShowHelpMarker("Hold CTRL and click to select multiple items."); + /* static */ const selection = STATIC("selection#720", [false, false, false, false, false]); + for (let n = 0; n < 5; n++) { + const buf = `Object ${n}`; + if (ImGui.Selectable(buf, selection.value[n])) { + if (!ImGui.GetIO().KeyCtrl) + // memset(selection, 0, sizeof(selection)); + selection.value.fill(false); + selection.value[n] = !selection.value[n]; + } + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Rendering more text into the same line")) { + // Using the Selectable() override that takes "bool* p_selected" parameter and toggle your booleans automatically. /* static */ const selected = STATIC("selected#687", [false, false, false]); ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); @@ -672,7 +704,7 @@ "*/\n\n" + "label:\n" + "\tlock cmpxchg8b eax\n")); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); ImGui.Checkbox("Read-only", (value = read_only.value) => read_only.value = value); ImGui.PopStyleVar(); ImGui.InputTextMultiline("##source", text.value, imgui_3.IM_ARRAYSIZE(text.value), new imgui_6.ImVec2(-1.0, ImGui.GetTextLineHeight() * 16), 1024 /* AllowTabInput */ | (read_only.value ? 16384 /* ReadOnly */ : 0)); @@ -740,18 +772,18 @@ } if (ImGui.TreeNode("Color/Picker Widgets")) { /* static */ const color = STATIC("color#863", new imgui_9.ImColor(114, 144, 154, 200).toImVec4()); - /* static */ const hdr = STATIC("hdr", false); /* static */ const alpha_preview = STATIC("alpha_preview", true); /* static */ const alpha_half_preview = STATIC("alpha_half_preview", false); /* static */ const options_menu = STATIC("options_menu", true); - ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); - ImGui.SameLine(); - ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); + /* static */ const hdr = STATIC("hdr", false); ImGui.Checkbox("With Alpha Preview", (value = alpha_preview.value) => alpha_preview.value = value); ImGui.Checkbox("With Half Alpha Preview", (value = alpha_half_preview.value) => alpha_half_preview.value = value); ImGui.Checkbox("With Options Menu", (value = options_menu.value) => options_menu.value = value); ImGui.SameLine(); ShowHelpMarker("Right-click on the individual color widget to show options."); + ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); + ImGui.SameLine(); + ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); const misc_flags = (hdr.value ? 4096 /* HDR */ : 0) | (alpha_half_preview.value ? 2048 /* AlphaPreviewHalf */ : (alpha_preview.value ? 1024 /* AlphaPreview */ : 0)) | (options_menu.value ? 0 : 8 /* NoOptions */); ImGui.Text("Color widget:"); ImGui.SameLine(); @@ -912,7 +944,7 @@ } if (ImGui.TreeNode("Vertical Sliders")) { const spacing = 4; - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(spacing, spacing)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(spacing, spacing)); /* static */ const int_value = STATIC("int_value", 0); ImGui.VSliderInt("##int", new imgui_6.ImVec2(18, 160), (value = int_value.value) => int_value.value = value, 0, 5); ImGui.SameLine(); @@ -958,7 +990,7 @@ if (i > 0) ImGui.SameLine(); ImGui.PushID(i); - ImGui.PushStyleVar(15 /* GrabMinSize */, 40); + ImGui.PushStyleVar(18 /* GrabMinSize */, 40); ImGui.VSliderFloat("##v", new imgui_6.ImVec2(40, 160), (value = values.value[i]) => values.value[i] = value, 0.0, 1.0, "%.2f\nsec"); ImGui.PopStyleVar(); ImGui.PopID(); @@ -971,36 +1003,49 @@ if (ImGui.CollapsingHeader("Layout")) { if (ImGui.TreeNode("Child regions")) { /* static */ const disable_mouse_wheel = STATIC("disable_mouse_wheel", false); + /* static */ const disable_menu = STATIC("disable_menu", false); ImGui.Checkbox("Disable Mouse Wheel", (value = disable_mouse_wheel.value) => disable_mouse_wheel.value = value); - ImGui.Text("Without border"); + ImGui.Checkbox("Disable Menu", (value = disable_menu.value) => disable_menu.value = value); /* static */ const line = STATIC("line", 50); let goto_line = ImGui.Button("Goto"); ImGui.SameLine(); ImGui.PushItemWidth(100); goto_line = ImGui.InputInt("##Line", (value = line.value) => line.value = value, 0, 0, 32 /* EnterReturnsTrue */) || goto_line; ImGui.PopItemWidth(); - ImGui.BeginChild("Sub1", new imgui_6.ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, 2048 /* HorizontalScrollbar */ | (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); - for (let i = 0; i < 100; i++) { - ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); - if (goto_line && line.value === i) + // Child 1: no border, enable horizontal scrollbar + { + ImGui.BeginChild("Child1", new imgui_6.ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, 2048 /* HorizontalScrollbar */ | (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); + for (let i = 0; i < 100; i++) { + ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); + if (goto_line && line.value === i) + ImGui.SetScrollHere(); + } + if (goto_line && line.value >= 100) ImGui.SetScrollHere(); + ImGui.EndChild(); } - if (goto_line && line.value >= 100) - ImGui.SetScrollHere(); - ImGui.EndChild(); ImGui.SameLine(); - ImGui.PushStyleVar(5 /* ChildRounding */, 5.0); - ImGui.BeginChild("Sub2", new imgui_6.ImVec2(0, 300), true, (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); - ImGui.Text("With border"); - ImGui.Columns(2); - for (let i = 0; i < 100; i++) { - if (i === 50) - ImGui.NextColumn(); - const buf = `${("00000000" + (i * 5731).toString(16)).substr(-8)}`; - ImGui.Button(buf, new imgui_6.ImVec2(-1.0, 0.0)); + // Child 2: rounded border + { + ImGui.PushStyleVar(6 /* ChildRounding */, 5.0); + ImGui.BeginChild("Child2", new imgui_6.ImVec2(0, 300), true, (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0) | (disable_menu ? 0 : 1024 /* MenuBar */)); + if (!disable_menu && ImGui.BeginMenuBar()) { + if (ImGui.BeginMenu("Menu")) { + ShowExampleMenuFile(); + ImGui.EndMenu(); + } + ImGui.EndMenuBar(); + } + ImGui.Columns(2); + for (let i = 0; i < 100; i++) { + if (i === 50) + ImGui.NextColumn(); + const buf = `${("00000000" + (i * 5731).toString(16)).substr(-8)}`; + ImGui.Button(buf, new imgui_6.ImVec2(-1.0, 0.0)); + } + ImGui.EndChild(); + ImGui.PopStyleVar(); } - ImGui.EndChild(); - ImGui.PopStyleVar(); ImGui.TreePop(); } if (ImGui.TreeNode("Widgets Width")) { @@ -1265,8 +1310,8 @@ ImGui.TextWrapped("You may want to explicitly specify content width by calling SetNextWindowContentWidth() before Begin()."); /* static */ const lines = STATIC("lines#1432", 7); ImGui.SliderInt("Lines", (value = lines.value) => lines.value = value, 1, 15); - ImGui.PushStyleVar(10 /* FrameRounding */, 3.0); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(2.0, 1.0)); + ImGui.PushStyleVar(11 /* FrameRounding */, 3.0); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(2.0, 1.0)); ImGui.BeginChild("scrolling", new imgui_6.ImVec2(0, ImGui.GetFrameHeightWithSpacing() * 7 + 30), true, 2048 /* HorizontalScrollbar */); for (let line = 0; line < lines.value; line++) { // Display random stuff (for the sake of this trivial demo we are using basic Button+SameLine. If you want to create your own time line for a real application you may be better off @@ -1425,12 +1470,13 @@ ///* static */ const dummy_i: number = 0; //ImGui.Combo("Combo", &dummy_i, "Delete\0Delete harder\0"); /* static */ const dont_ask_me_next_time = STATIC("dont_ask_me_next_time", false); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); ImGui.Checkbox("Don't ask me next time", (value = dont_ask_me_next_time.value) => dont_ask_me_next_time.value = value); ImGui.PopStyleVar(); if (ImGui.Button("OK", new imgui_6.ImVec2(120, 0))) { ImGui.CloseCurrentPopup(); } + ImGui.SetItemDefaultFocus(); ImGui.SameLine(); if (ImGui.Button("Cancel", new imgui_6.ImVec2(120, 0))) { ImGui.CloseCurrentPopup(); @@ -1448,7 +1494,7 @@ if (ImGui.Button("Add another modal..")) ImGui.OpenPopup("Stacked 2"); if (ImGui.BeginPopupModal("Stacked 2")) { - ImGui.Text("Hello from Stacked The Second"); + ImGui.Text("Hello from Stacked The Second!"); if (ImGui.Button("Close")) ImGui.CloseCurrentPopup(); ImGui.EndPopup(); @@ -1670,16 +1716,22 @@ if (filter.value.PassFilter(lines[i])) ImGui.BulletText(lines[i]); } - if (ImGui.CollapsingHeader("Inputs & Focus")) { + if (ImGui.CollapsingHeader("Inputs, Navigation & Focus")) { const io = ImGui.GetIO(); - ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); - ImGui.SameLine(); - ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); ImGui.Text(`WantCaptureMouse: ${io.WantCaptureMouse}`); ImGui.Text(`WantCaptureKeyboard: ${io.WantCaptureKeyboard}`); ImGui.Text(`WantTextInput: ${io.WantTextInput}`); ImGui.Text(`WantMoveMouse: ${io.WantMoveMouse}`); - if (ImGui.TreeNode("Keyboard & Mouse State")) { + ImGui.Text(`NavActive: ${io.NavActive}, NavVisible: ${io.NavVisible}`); + ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); + ImGui.SameLine(); + ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + ImGui.CheckboxFlags("io.NavFlags: EnableGamepad", (value = io.NavFlags) => io.NavFlags = value, 2 /* EnableGamepad */); + ImGui.CheckboxFlags("io.NavFlags: EnableKeyboard", (value = io.NavFlags) => io.NavFlags = value, 1 /* EnableKeyboard */); + ImGui.CheckboxFlags("io.NavFlags: MoveMouse", (value = io.NavFlags) => io.NavFlags = value, 4 /* MoveMouse */); + ImGui.SameLine(); + ShowHelpMarker("Request ImGui to move your move cursor when using gamepad/keyboard navigation. NewFrame() will change io.MousePos and set the io.WantMoveMouse flag, your backend will need to apply the new mouse position."); + if (ImGui.TreeNode("Keyboard, Mouse & Navigation State")) { if (ImGui.IsMousePosValid()) ImGui.Text(`Mouse pos: (${io.MousePos.x}, ${io.MousePos.x})`); else @@ -1728,6 +1780,24 @@ ImGui.Text(i.toString()); } ImGui.Text(`Keys mods: ${io.KeyCtrl ? "CTRL " : ""}${io.KeyShift ? "SHIFT " : ""}${io.KeyAlt ? "ALT " : ""}${io.KeySuper ? "SUPER " : ""}`); + ImGui.Text("NavInputs down:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputs[i] > 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}] ${io.NavInputs[i].toFixed(2)}`); + } + ImGui.Text("NavInputs pressed:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputsDownDuration[i] == 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}]`); + } + ImGui.Text("NavInputs duration:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputsDownDuration[i] >= 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}] ${io.NavInputsDownDuration[i].toFixed(2)}`); + } ImGui.Button("Hovering me sets the\nkeyboard capture flag"); if (ImGui.IsItemHovered()) ImGui.CaptureKeyboardFromApp(true); @@ -1779,7 +1849,21 @@ ImGui.Text(`Item with focus: ${has_focus}`); else ImGui.Text("Item with focus: "); - ImGui.TextWrapped("Cursor & selection are preserved when refocusing last used item in code."); + // Use >= 0 parameter to SetKeyboardFocusHere() to focus an upcoming item + /* static */ const f3 = STATIC("f3", [0.0, 0.0, 0.0]); + let focus_ahead = -1; + if (ImGui.Button("Focus on X")) + focus_ahead = 0; + ImGui.SameLine(); + if (ImGui.Button("Focus on Y")) + focus_ahead = 1; + ImGui.SameLine(); + if (ImGui.Button("Focus on Z")) + focus_ahead = 2; + if (focus_ahead != -1) + ImGui.SetKeyboardFocusHere(focus_ahead); + ImGui.SliderFloat3("Float3", f3.value, 0.0, 1.0); + ImGui.TextWrapped("NB: Cursor & selection are preserved when refocusing last used item in code."); ImGui.TreePop(); } if (ImGui.TreeNode("Focused & Hovered Test")) { @@ -1791,21 +1875,23 @@ ImGui.BulletText(`IsWindowFocused() = ${ImGui.IsWindowFocused()}\n` + `IsWindowFocused(_ChildWindows) = ${ImGui.IsWindowFocused(1 /* ChildWindows */)}\n` + `IsWindowFocused(_ChildWindows|_RootWindow) = ${ImGui.IsWindowFocused(1 /* ChildWindows */ | 2 /* RootWindow */)}\n` + - `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(2 /* RootWindow */)}\n`); + `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(2 /* RootWindow */)}\n` + + `IsWindowFocused(_AnyWindow) = ${ImGui.IsWindowFocused(4 /* AnyWindow */)}\n`); // Testing IsWindowHovered() function with its various flags (note that the flags can be combined) ImGui.BulletText(`IsWindowHovered() = ${ImGui.IsWindowHovered()}\n` + - `IsWindowHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsWindowHovered(4 /* AllowWhenBlockedByPopup */)}\n` + - `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(16 /* AllowWhenBlockedByActiveItem */)}\n` + + `IsWindowHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsWindowHovered(8 /* AllowWhenBlockedByPopup */)}\n` + + `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(32 /* AllowWhenBlockedByActiveItem */)}\n` + `IsWindowHovered(_ChildWindows) = ${ImGui.IsWindowHovered(1 /* ChildWindows */)}\n` + `IsWindowHovered(_ChildWindows|_RootWindow) = ${ImGui.IsWindowHovered(1 /* ChildWindows */ | 2 /* RootWindow */)}\n` + - `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(2 /* RootWindow */)}\n"`); + `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(2 /* RootWindow */)}\n"` + + `IsWindowHovered(_AnyWindow) = ${ImGui.IsWindowHovered(4 /* AnyWindow */)}\n"`); // Testing IsItemHovered() function (because BulletText is an item itself and that would affect the output of IsItemHovered, we pass all lines in a single items to shorten the code) ImGui.Button("ITEM"); ImGui.BulletText(`IsItemHovered() = ${ImGui.IsItemHovered()}\n` + - `IsItemHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsItemHovered(4 /* AllowWhenBlockedByPopup */)}\n` + - `IsItemHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsItemHovered(16 /* AllowWhenBlockedByActiveItem */)}\n` + - `IsItemHovered(_AllowWhenOverlapped) = ${ImGui.IsItemHovered(32 /* AllowWhenOverlapped */)}\n` + - `IsItemhovered(_RectOnly) = ${ImGui.IsItemHovered(52 /* RectOnly */)}\n`); + `IsItemHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsItemHovered(8 /* AllowWhenBlockedByPopup */)}\n` + + `IsItemHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsItemHovered(32 /* AllowWhenBlockedByActiveItem */)}\n` + + `IsItemHovered(_AllowWhenOverlapped) = ${ImGui.IsItemHovered(64 /* AllowWhenOverlapped */)}\n` + + `IsItemhovered(_RectOnly) = ${ImGui.IsItemHovered(104 /* RectOnly */)}\n`); ImGui.BeginChild("child", new imgui_6.ImVec2(0, 50), true); ImGui.Text("This is another child window for testing IsWindowHovered() flags."); ImGui.EndChild(); @@ -1822,7 +1908,9 @@ // Draw a line between the button and the mouse cursor const draw_list = ImGui.GetWindowDrawList(); draw_list.PushClipRectFullScreen(); - draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[21 /* Button */]), 4.0); + // draw_list->AddLine(io.MouseClickedPos[0], io.MousePos, ImGui::GetColorU32(ImGuiCol_Button), 4.0f); + draw_list.AddLine(io.MouseClickedPos[0], io.MousePos, ImGui.GetColorU32(21 /* Button */), 4.0); + // draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); draw_list.PopClipRect(); // Drag operations gets "unlocked" when the mouse has moved past a certain threshold (the default threshold is stored in io.MouseDragThreshold) // You can request a lower or higher threshold using the second parameter of IsMouseDragging() and GetMouseDragDelta() @@ -1845,7 +1933,7 @@ const label = `Mouse cursor ${i}: ${mouse_cursors_names[i]}`; ImGui.Bullet(); ImGui.Selectable(label, false); - if (ImGui.IsItemHovered()) + if (ImGui.IsItemHovered() || ImGui.IsItemFocused()) ImGui.SetMouseCursor(i); } ImGui.TreePop(); @@ -1857,7 +1945,7 @@ // Demo helper function to select among default colors. See ShowStyleEditor() for more advanced options. // Here we use the simplified Combo() api that packs items into a single literal string. Useful for quick combo boxes where the choices are known locally. function ShowStyleSelector(label) { - /* static */ const style_idx = STATIC("style_idx", 0); + /* static */ const style_idx = STATIC("style_idx", -1); if (ImGui.Combo(label, (value = style_idx.value) => style_idx.value = value, "Classic\0Dark\0Light\0")) { switch (style_idx.value) { case 0: @@ -1890,7 +1978,7 @@ ImGui.SameLine(); ShowHelpMarker("- Load additional fonts with io.Fonts->AddFontFromFileTTF().\n" + "- The font atlas is built when calling io.Fonts->GetTexDataAsXXXX() or io.Fonts->Build().\n" + - "- Read FAQ and documentation in extra_fonts/ for more details.\n" + + "- Read FAQ and documentation in misc/fonts for more details.\n" + "- If you need to add/remove fonts at runtime (e.g. for DPI change), do it before calling NewFrame()."); } exports.ShowFontSelector = ShowFontSelector; @@ -1987,7 +2075,7 @@ else ImGui.LogToTTY(); ImGui.LogText("ImVec4* colors = ImGui.GetStyle().Colors;" + IM_NEWLINE); - for (let i = 0; i < 43 /* COUNT */; i++) { + for (let i = 0; i < 45 /* COUNT */; i++) { const col = style.Colors[i]; const name = ImGui.GetStyleColorName(i); if (!output_only_modified.value || !col.Equals(ref.Colors[i])) @@ -2010,9 +2098,9 @@ ImGui.RadioButton("Alpha", (value = alpha_flags.value) => alpha_flags.value = value, 1024 /* AlphaPreview */); ImGui.SameLine(); ImGui.RadioButton("Both", (value = alpha_flags.value) => alpha_flags.value = value, 2048 /* AlphaPreviewHalf */); - ImGui.BeginChild("#colors", new imgui_6.ImVec2(0, 300), true, 16384 /* AlwaysVerticalScrollbar */ | 32768 /* AlwaysHorizontalScrollbar */); + ImGui.BeginChild("#colors", new imgui_6.ImVec2(0, 300), true, 16384 /* AlwaysVerticalScrollbar */ | 32768 /* AlwaysHorizontalScrollbar */ | 8388608 /* NavFlattened */); ImGui.PushItemWidth(-160); - for (let i = 0; i < 43 /* COUNT */; i++) { + for (let i = 0; i < 45 /* COUNT */; i++) { const name = ImGui.GetStyleColorName(i); if (!filter.value.PassFilter(name)) continue; @@ -2020,7 +2108,7 @@ ImGui.ColorEdit4("##color", style.Colors[i], 512 /* AlphaBar */ | alpha_flags.value); if (!style.Colors[i].Equals(ref.Colors[i])) { // Tips: in a real user application, you may want to merge and use an icon font into the main font, so instead of "Save"/"Revert" you'd use icons. - // Read the FAQ and extra_fonts/README.txt about using icon fonts. It's really easy and super convenient! + // Read the FAQ and misc/fonts/README.txt about using icon fonts. It's really easy and super convenient! ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Save")) ref.Colors[i].Copy(style.Colors[i]); @@ -2057,6 +2145,7 @@ // ImGui.Text("The quick brown fox jumps over the lazy dog"); // ImGui.PopFont(); // ImGui.DragFloat("Font scale", &font->Scale, 0.005f, 0.3f, 2.0f, "%.1f"); // Scale only this font + // ImGui.InputFloat("Font offset", &font->DisplayOffset.y, 1, 1, 0); // ImGui.SameLine(); ShowHelpMarker("Note than the default embedded font is NOT meant to be scaled.\n\nFont are currently rendered into bitmaps at a given size at the time of building the atlas. You may oversample them to get some flexibility with scaling. You can also render at multiple sizes and select which one to use at runtime.\n\n(Glimmer of hope: the atlas system should hopefully be rewritten in the future to make scaling more natural and automatic.)"); // ImGui.Text("Ascent: %f, Descent: %f, Height: %f", font->Ascent, font->Descent, font->Ascent - font->Descent); // ImGui.Text("Fallback character: '%c' (%d)", font->FallbackChar, font->FallbackChar); @@ -2179,14 +2268,16 @@ ImGui.EndMenu(); } if (ImGui.BeginMenu("Colors")) { - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); - for (let i = 0; i < 43 /* COUNT */; i++) { + const sz = ImGui.GetTextLineHeight(); + for (let i = 0; i < 45 /* COUNT */; i++) { const name = ImGui.GetStyleColorName(i); ImGui.ColorButton(name, ImGui.GetStyleColorVec4(i)); + const p = ImGui.GetCursorScreenPos(); + ImGui.GetWindowDrawList().AddRectFilled(p, new imgui_6.ImVec2(p.x + sz, p.y + sz), ImGui.GetColorU32(i)); + ImGui.Dummy(new imgui_6.ImVec2(sz, sz)); ImGui.SameLine(); ImGui.MenuItem(name); } - ImGui.PopStyleVar(); ImGui.EndMenu(); } if (ImGui.BeginMenu("Disabled", false)) { @@ -2277,7 +2368,7 @@ const window_pos = new imgui_6.ImVec2((corner.value & 1) ? ImGui.GetIO().DisplaySize.x - DISTANCE : DISTANCE, (corner.value & 2) ? ImGui.GetIO().DisplaySize.y - DISTANCE : DISTANCE); const window_pos_pivot = new imgui_6.ImVec2((corner.value & 1) ? 1.0 : 0.0, (corner.value & 2) ? 1.0 : 0.0); ImGui.SetNextWindowPos(window_pos, 1 /* Always */, window_pos_pivot); - ImGui.PushStyleColor(2 /* WindowBg */, new imgui_7.ImVec4(0.0, 0.0, 0.0, 0.3)); // Transparent background + ImGui.SetNextWindowBgAlpha(0.3); // Transparent background if (ImGui.Begin("Example: Fixed Overlay", p_open, 1 /* NoTitleBar */ | 2 /* NoResize */ | 64 /* AlwaysAutoResize */ | 4 /* NoMove */ | 256 /* NoSavedSettings */)) { ImGui.Text("Simple overlay\nin the corner of the screen.\n(right-click to change position)"); ImGui.Separator(); @@ -2291,11 +2382,12 @@ corner.value = 2; if (ImGui.MenuItem("Bottom-right", null, corner.value === 3)) corner.value = 3; + if (p_open() && ImGui.MenuItem("Close")) + p_open(false); ImGui.EndPopup(); } ImGui.End(); } - ImGui.PopStyleColor(); } // Demonstrate using "##" and "###" in identifiers to manipulate ID generation. // This apply to regular items as well. Read FAQ section "How can I have multiple widgets with the same label? Can I have widget without a label? (Yes). A primer on the purpose of labels/IDs." for details. @@ -2408,7 +2500,7 @@ if (adding_line.value) { adding_preview = true; points.value.push_back(mouse_pos_in_canvas); - if (!ImGui.GetIO().MouseDown[0]) + if (!ImGui.IsMouseDown(0)) adding_line.value = adding_preview = false; } if (ImGui.IsItemHovered()) { @@ -2519,7 +2611,7 @@ this.ScrollToBottom = true; // /* static */ const t: Static = getStatic("t", 0.0); if (ImGui.GetTime() - t > 0.02) { t = ImGui.GetTime(); this.AddLog(`Spam ${t}`); } ImGui.Separator(); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); /* static */ const filter = STATIC("filter#2763", new imgui_11.ImGuiTextFilter()); filter.value.Draw("Filter (\"incl,-excl\") (\"error\")", 180); ImGui.PopStyleVar(); @@ -2542,16 +2634,16 @@ // A typical application wanting coarse clipping and filtering may want to pre-compute an array of indices that passed the filtering test, recomputing this array when user changes the filter, // and appending newly elements as they are inserted. This is left as a task to the user until we can manage to improve this example code! // If your items are of variable size you may want to implement code similar to what ImGuiListClipper does. Or split your data into fixed height items to allow random-seeking into your list. - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(4, 1)); // Tighten spacing + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(4, 1)); // Tighten spacing if (copy_to_clipboard) ImGui.LogToClipboard(); + const col_default_text = ImGui.GetStyleColorVec4(0 /* Text */); for (let i = 0; i < this.Items.Size; i++) { // const char* item = Items[i]; const item = this.Items.Data[i]; if (!filter.value.PassFilter(item)) continue; - // ImVec4 col = ImVec4(1.0f,1.0f,1.0f,1.0f); // A better implementation may store a type per-item. For the sample let's just parse the text. - let col = new imgui_7.ImVec4(1.0, 1.0, 1.0, 1.0); // A better implementation may store a type per-item. For the sample let's just parse the text. + let col = col_default_text; // if (strstr(item, "[error]")) col = ImColor(1.0f,0.4f,0.4f,1.0f); if (/\[error\]/.test(item)) col = new imgui_7.ImVec4(1.0, 0.4, 0.4, 1.0); @@ -2570,6 +2662,7 @@ ImGui.EndChild(); ImGui.Separator(); // Command-line + let reclaim_focus = false; if (ImGui.InputText("Input", this.InputBuf, imgui_3.IM_ARRAYSIZE(this.InputBuf), 32 /* EnterReturnsTrue */ | 64 /* CallbackCompletion */ | 128 /* CallbackHistory */, ExampleAppConsole.TextEditCallbackStub, this)) { // char* input_end = InputBuf+strlen(InputBuf); // while (input_end > InputBuf && input_end[-1] === ' ') { input_end--; } *input_end = 0; @@ -2579,9 +2672,11 @@ this.ExecCommand(this.InputBuf.buffer); // strcpy(InputBuf, ""); this.InputBuf.buffer = ""; + reclaim_focus = true; } - // Demonstrate keeping auto focus on the input box - if (ImGui.IsItemHovered() || (ImGui.IsWindowFocused(3 /* RootAndChildWindows */) && !ImGui.IsAnyItemActive() && !ImGui.IsMouseClicked(0))) + // Demonstrate keeping focus on the input box + ImGui.SetItemDefaultFocus(); + if (reclaim_focus) ImGui.SetKeyboardFocusHere(-1); // Auto focus previous widget ImGui.End(); } @@ -2841,7 +2936,7 @@ return; } ShowHelpMarker("This example shows how you may implement a property editor using two columns.\nAll objects/fields data are dummies here.\nRemember that in many simple cases, you can use ImGui.SameLine(xxx) to position\nyour cursor horizontally instead of using the Columns() API."); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(2, 2)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(2, 2)); ImGui.Columns(2); ImGui.Separator(); class funcs { @@ -2926,7 +3021,7 @@ case 1: { // Multiple calls to Text(), manually coarsely clipped - demonstrate how to use the ImGuiListClipper helper. - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); const clipper = new imgui_13.ImGuiListClipper(lines.value); while (clipper.Step()) for (let i = clipper.DisplayStart; i < clipper.DisplayEnd; i++) @@ -2937,7 +3032,7 @@ } case 2: // Multiple calls to Text(), not clipped (slow) - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); for (let i = 0; i < lines.value; i++) ImGui.Text(`${i} The quick brown fox jumps over the lazy dog`); ImGui.PopStyleVar(); @@ -2954,4 +3049,4 @@ // export function ShowFontSelector(label: string): void {} // export function ShowStyleEditor(ref: ImGuiStyle | null = null): void {} // #endif -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2RlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9CQUFvQjtBQUNwQixjQUFjOztBQUVkLGlHQUFpRztBQUNqRyxzSUFBc0k7QUFDdEksdUdBQXVHO0FBQ3ZHLGdKQUFnSjtBQUNoSiwwSkFBMEo7QUFDMUosMEZBQTBGO0FBQzFGLHNLQUFzSztBQUN0Syx3SEFBd0g7QUFDeEgsYUFBYTtBQUNiLCtEQUErRDtBQUUvRCxzSkFBc0o7QUFDdEosaUpBQWlKO0FBQ2pKLHNJQUFzSTtBQUN0SSw0SkFBNEo7QUFDNUosa0tBQWtLO0FBRWxLLDZEQUE2RDtBQUM3RCxrQ0FBa0M7QUFDbEMsU0FBUztBQUVULHFCQUFxQjtBQUNyQixrREFBa0Q7QUFDbEQsd0VBQXdFO0FBQ3hFLDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsb0VBQW9FO0FBQ3BFLDBDQUEwQztBQUMxQyxRQUFRO0FBQ1IsMENBQTBDO0FBQzFDLFNBQVM7QUFFVCxpQ0FBaUM7QUFDakMsbUNBQXdDO0FBQ3hDLG1DQUFvQztBQUNwQyxtQ0FBdUM7QUFDdkMsbUNBQXlDO0FBcUJ6QyxtQ0FBbUM7QUFDbkMsbUNBQW1EO0FBQ25ELG1DQUFtRDtBQUNuRCxtQ0FBbUM7QUFDbkMsbUNBQWtDO0FBRWxDLG9DQUFxQztBQUVyQyxvQ0FBMEM7QUFDMUMsb0NBQTBDO0FBQzFDLG9DQUEyQztBQUkzQyxrQkFBa0I7QUFDbEIsa0lBQWtJO0FBQ2xJLDZCQUE2QjtBQUM3QixTQUFTO0FBQ1QsbUJBQW1CO0FBQ25CLCtKQUErSjtBQUMvSixzTUFBc007QUFDdE0sZ0lBQWdJO0FBQ2hJLDhIQUE4SDtBQUM5SCx3VEFBd1Q7QUFDeFQsMkNBQTJDO0FBQzNDLHFJQUFxSTtBQUNySSxTQUFTO0FBQ1QsMEJBQTBCO0FBQzFCLDZIQUE2SDtBQUM3SCw0SUFBNEk7QUFDNUksNkpBQTZKO0FBQzdKLG1JQUFtSTtBQUNuSSxzQkFBc0I7QUFDdEIsd0tBQXdLO0FBQ3hLLFNBQVM7QUFDVCxTQUFTO0FBRVQsdUdBQXVHO0FBQ3ZHLGdCQUFnQjtBQUNoQiw0QkFBNEI7QUFDNUIsUUFBUTtBQUNSLDBCQUEwQjtBQUMxQixTQUFTO0FBQ1QsTUFBTSxVQUFVLEdBQVcsSUFBSSxDQUFDO0FBRWhDLDZEQUE2RDtBQUM3RCxnQkFBZ0IsRUFBVSxFQUFFLEVBQVUsSUFBWSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFeEYsK0VBQStFO0FBQy9FLFlBQVk7QUFDWiwrRUFBK0U7QUFFL0UsMEtBQTBLO0FBQzFLLHFDQUFxQztBQUNyQyxTQUFTO0FBRVQsMkNBQTJDO0FBRTNDO0lBQ0ksWUFBbUIsS0FBUTtRQUFSLFVBQUssR0FBTCxLQUFLLENBQUc7SUFBRyxDQUFDO0NBQ2xDO0FBRUQsTUFBTSxPQUFPLEdBQWlDLEVBQUUsQ0FBQztBQUVqRCxnQkFBbUIsR0FBVyxFQUFFLEtBQVE7SUFDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLE1BQU0sQ0FBSSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxtREFBbUQ7QUFDbkQsK0NBQStDO0FBQy9DLGtEQUFrRDtBQUNsRCwwREFBMEQ7QUFDMUQsb0RBQW9EO0FBQ3BELHNEQUFzRDtBQUN0RCw2REFBNkQ7QUFDN0Qsd0RBQXdEO0FBQ3hELHdEQUF3RDtBQUN4RCwyREFBMkQ7QUFDM0QsMkNBQTJDO0FBQzNDLHFDQUFxQztBQUVyQyx3QkFBd0IsSUFBWTtJQUVoQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUMxQixDQUFDO1FBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JCLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBRUQ7SUFFSSxLQUFLLENBQUMsVUFBVSxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbEUsS0FBSyxDQUFDLFVBQVUsQ0FBQywyR0FBMkcsQ0FBQyxDQUFDO0lBQzlILEtBQUssQ0FBQyxVQUFVLENBQUMsbURBQW1ELENBQUMsQ0FBQztJQUN0RSxLQUFLLENBQUMsVUFBVSxDQUFDLDBEQUEwRCxDQUFDLENBQUM7SUFDN0UsS0FBSyxDQUFDLFVBQVUsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO0lBQy9FLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztRQUNuQyxLQUFLLENBQUMsVUFBVSxDQUFDLDJDQUEyQyxDQUFDLENBQUM7SUFDbEUsS0FBSyxDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzNDLEtBQUssQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUMxQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDZixLQUFLLENBQUMsVUFBVSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7SUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0lBQ2xELEtBQUssQ0FBQyxVQUFVLENBQUMsdUNBQXVDLENBQUMsQ0FBQztJQUMxRCxLQUFLLENBQUMsVUFBVSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFDM0QsS0FBSyxDQUFDLFVBQVUsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ2hELEtBQUssQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0QyxLQUFLLENBQUMsVUFBVSxDQUFDLG9GQUFvRixDQUFDLENBQUM7SUFDdkcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0FBQ3JCLENBQUM7QUFwQkQsc0NBb0JDO0FBRUQsa0RBQWtEO0FBQ2xELHdCQUErQixTQUF1RCxJQUFJO0lBRXRGLGdCQUFnQjtJQUNoQixZQUFZLENBQUMsTUFBTSxzQkFBc0IsR0FBb0IsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JHLFlBQVksQ0FBQyxNQUFNLGdCQUFnQixHQUFvQixNQUFNLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekYsWUFBWSxDQUFDLE1BQU0sWUFBWSxHQUFvQixNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLFlBQVksQ0FBQyxNQUFNLGVBQWUsR0FBb0IsTUFBTSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZGLFlBQVksQ0FBQyxNQUFNLHdCQUF3QixHQUFvQixNQUFNLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekcsWUFBWSxDQUFDLE1BQU0sa0JBQWtCLEdBQW9CLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3RixZQUFZLENBQUMsTUFBTSxvQkFBb0IsR0FBb0IsTUFBTSxDQUFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pHLFlBQVksQ0FBQyxNQUFNLDJCQUEyQixHQUFvQixNQUFNLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0csWUFBWSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRyxZQUFZLENBQUMsTUFBTSxzQkFBc0IsR0FBb0IsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JHLFlBQVksQ0FBQyxNQUFNLHlCQUF5QixHQUFvQixNQUFNLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0csWUFBWSxDQUFDLE1BQU0scUJBQXFCLEdBQW9CLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVuRyxZQUFZLENBQUMsTUFBTSxnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pGLFlBQVksQ0FBQyxNQUFNLGNBQWMsR0FBb0IsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRXJGLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUFPLHlCQUF5QixFQUFFLENBQUM7SUFDcEUsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO1FBQWEscUJBQXFCLENBQUMsQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDbEksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUFpQixpQkFBaUIsQ0FBQyxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ3RILEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7UUFBYyxvQkFBb0IsQ0FBQyxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQy9ILEVBQUUsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQztRQUFLLDRCQUE0QixDQUFDLENBQUMsS0FBSyxHQUFHLHdCQUF3QixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ3pKLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQztRQUFXLHNCQUFzQixDQUFDLENBQUMsS0FBSyxHQUFHLGtCQUFrQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ3ZJLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQztRQUFTLHdCQUF3QixDQUFDLENBQUMsS0FBSyxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQzdJLEVBQUUsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLEtBQUssQ0FBQztRQUFFLCtCQUErQixDQUFDLENBQUMsS0FBSyxHQUFHLDJCQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsMkJBQTJCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ2xLLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUFPLDBCQUEwQixDQUFDLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ25KLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUFPLDBCQUEwQixDQUFDLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ25KLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQztRQUFJLDZCQUE2QixDQUFDLENBQUMsS0FBSyxHQUFHLHlCQUF5QixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMseUJBQXlCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBRTVKLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFhLENBQUM7UUFBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFBQyxDQUFDO0lBQ3hJLEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFRLENBQUM7UUFBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLFVBQVU7UUFBQSxlQUFlLEVBQUUsQ0FBQztRQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUFDLENBQUM7SUFDaE0sRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUN6QixDQUFDO1FBQ0csS0FBSyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssNEJBQXFDLENBQUM7UUFDcEksS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2xCLEtBQUssQ0FBQyxJQUFJLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUM5RCxLQUFLLENBQUMsSUFBSSxDQUFDLGlGQUFpRixDQUFDLENBQUM7UUFDOUYsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBTSxXQUFXLEdBQW9CLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0UsWUFBWSxDQUFDLE1BQU0sWUFBWSxHQUFvQixNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLFlBQVksQ0FBQyxNQUFNLE9BQU8sR0FBb0IsTUFBTSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RSxZQUFZLENBQUMsTUFBTSxPQUFPLEdBQW9CLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkUsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUFvQixNQUFNLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNFLFlBQVksQ0FBQyxNQUFNLFdBQVcsR0FBb0IsTUFBTSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRSxZQUFZLENBQUMsTUFBTSxRQUFRLEdBQW9CLE1BQU0sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFekUsa0ZBQWtGO0lBQ2xGLElBQUksWUFBWSxHQUFzQixDQUFDLENBQUM7SUFDeEMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUFFLFlBQVksc0JBQStCLENBQUM7SUFDcEUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUFDLFlBQVksdUJBQWdDLENBQUM7SUFDckUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQUssWUFBWSxzQkFBNEIsQ0FBQztJQUNqRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQU0sWUFBWSxrQkFBMkIsQ0FBQztJQUNoRSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBQUksWUFBWSxvQkFBNkIsQ0FBQztJQUNsRSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQUUsWUFBWSx1QkFBK0IsQ0FBQztJQUNwRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQUssTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLGdDQUFnQztJQUV2RSxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyx1QkFBeUIsQ0FBQztJQUNyRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUNyRCxDQUFDO1FBQ0csNERBQTREO1FBQzVELEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNaLE1BQU0sQ0FBQztJQUNYLENBQUM7SUFFRCwwR0FBMEc7SUFDMUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQWlDLDBDQUEwQztJQUVyRyxLQUFLLENBQUMsSUFBSSxDQUFDLDJCQUEyQixxQkFBYSxHQUFHLENBQUMsQ0FBQztJQUV4RCxPQUFPO0lBQ1AsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQ3pCLENBQUM7UUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzVCLENBQUM7WUFDRyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3RCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUNoQyxDQUFDO1lBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3RILEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNwRyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN4RixLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN4RyxLQUFLLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUM1SCxLQUFLLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsSCxLQUFLLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN6SCxLQUFLLENBQUMsUUFBUSxDQUFDLDZCQUE2QixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRywyQkFBMkIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLDJCQUEyQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUM5SSxLQUFLLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN2SCxLQUFLLENBQUMsUUFBUSxDQUFDLDRCQUE0QixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNuSSxLQUFLLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHlCQUF5QixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUMvSCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDNUIsQ0FBQztZQUNHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNwRyxLQUFLLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcscUJBQXFCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbkgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN6RyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUNELEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUNuQyxDQUFDO1FBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQyw2SEFBNkgsQ0FBQyxDQUFDO1FBQ2pKLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDMUIsVUFBVSxDQUFBLGFBQWEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUM3QyxDQUFDO1FBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2RyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3hGLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFFL0UsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csVUFBVSxDQUFBLGVBQWUsRUFBRSxDQUFDO1lBQzVCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQ3RDLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDRPQUE0TyxDQUFDLENBQUM7WUFDaFEsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25CLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUN0QyxDQUFDO1FBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sT0FBTyxHQUFtQixNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3ZCLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNwQixFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUN0QixDQUFDO2dCQUNHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1lBQzFDLENBQUM7WUFFRCxZQUFZLENBQUMsTUFBTSxLQUFLLEdBQW9CLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUV6RSxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQW1CLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFFdEUsMEdBQTBHO1lBQzFHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUMxQixDQUFDO2dCQUNHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM1QixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixLQUFLLENBQUMsY0FBYyxrQkFBa0IsZUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNwRSxLQUFLLENBQUMsY0FBYyx5QkFBeUIsZUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMzRSxLQUFLLENBQUMsY0FBYyx3QkFBd0IsZUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMxRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN0QixLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEIsQ0FBQztZQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDNUIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN0QixLQUFLLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFdkMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQzFCLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNyQixLQUFLLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBQ25DLFlBQVksQ0FBQyxNQUFNLEdBQUcsR0FBcUIsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBRSxDQUFDLENBQUM7Z0JBQ2xHLG9EQUFvRDtnQkFDcEQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNuRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsQ0FBQztZQUVELHNDQUFzQztZQUN0QyxrQ0FBa0M7WUFDbEMsNkJBQTZCO1lBQzdCLGVBQWU7WUFDZiwwREFBMEQ7WUFFMUQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBRWxCLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRWxDLENBQUM7Z0JBQ0csb0ZBQW9GO2dCQUNwRixZQUFZLENBQUMsTUFBTSxjQUFjLEdBQW1CLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEYsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsa0NBQWtDLENBQUMsQ0FBQztnQkFDekgsOE5BQThOO2dCQUU5Tiw0RkFBNEY7Z0JBQzVGLE1BQU0sS0FBSyxHQUFhLENBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUUsQ0FBQztnQkFDdEwsWUFBWSxDQUFDLE1BQU0sY0FBYyxHQUEwQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzFGLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUN0RCxDQUFDO29CQUNHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDNUMsQ0FBQzt3QkFDRyxNQUFNLFdBQVcsR0FBWSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnRkFBZ0Y7d0JBQ2xKLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDOzRCQUN4QyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDcEMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDOzRCQUNaLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUcsK0hBQStIO29CQUN0SyxDQUFDO29CQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztZQUNMLENBQUM7WUFFRCxDQUFDO2dCQUNHLFlBQVksQ0FBQyxNQUFNLElBQUksR0FBMkIsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLHNCQUFjLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBbUIsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDMUQsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3BFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFBQyxjQUFjLENBQUMsMkNBQTJDLEdBQUcsaUNBQWlDLEdBQUcseUNBQXlDLEdBQUcsbUNBQW1DLEdBQUcsNEJBQTRCLEdBQUcscUJBQXFCLENBQUMsQ0FBQztnQkFFM1AsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDcEUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUFDLGNBQWMsQ0FBQyw0SUFBNEksQ0FBQyxDQUFDO2dCQUUvSyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBRW5GLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBNkIsTUFBTSxDQUFtQixPQUFPLEVBQUUsQ0FBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUUsQ0FBQyxDQUFDO2dCQUNuSCxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkQsQ0FBQztZQUVELENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBbUIsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDeEcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFBQyxjQUFjLENBQUMsbUhBQW1ILENBQUMsQ0FBQztnQkFFdEosS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFFOUYsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsR0FBbUIsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDOUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzdFLEtBQUssQ0FBQyxTQUFTLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDOUcsQ0FBQztZQUVELENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM1RCxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDN0UsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUFDLGNBQWMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUUvRCxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUM1RyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLGNBQWMsQ0FBQyxDQUFDO2dCQUNwRyxLQUFLLENBQUMsV0FBVyxDQUFDLGtCQUFrQixFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3hHLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDaEUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNwRixDQUFDO1lBRUQsWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUE2QixNQUFNLENBQW1CLE1BQU0sRUFBRSxDQUFFLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFFLENBQUMsQ0FBQztZQUN0RyxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTZCLE1BQU0sQ0FBbUIsTUFBTSxFQUFFLENBQUUsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFFLENBQUMsQ0FBQztZQUMxRyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLCtKQUErSixDQUFDLENBQUM7WUFFbE0sS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXhDLE1BQU0sYUFBYSxHQUFhLENBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxZQUFZLENBQUUsQ0FBQztZQUNwSSxZQUFZLENBQUMsTUFBTSxvQkFBb0IsR0FBbUIsTUFBTSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVGLEtBQUssQ0FBQyxPQUFPLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLGFBQWEsRUFBRSxvQkFBWSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRXJLLFlBQVksQ0FBQyxNQUFNLHFCQUFxQixHQUFtQixNQUFNLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDOUYsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxhQUFhLEVBQUUsb0JBQVksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN6SixLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7WUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQ2xDLENBQUM7Z0JBQ0csR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUN0QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDL0MsQ0FBQzt3QkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUN4QixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQ2pCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7NEJBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQ2xFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDcEIsQ0FBQztnQkFDTCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsaUNBQWlDLENBQUMsQ0FBQyxDQUN0RCxDQUFDO2dCQUNHLGNBQWMsQ0FBQyw4SUFBOEksQ0FBQyxDQUFDO2dCQUMvSixZQUFZLENBQUMsTUFBTSxtQ0FBbUMsR0FBb0IsTUFBTSxDQUFDLHFDQUFxQyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUMvSCxLQUFLLENBQUMsUUFBUSxDQUFDLHNDQUFzQyxFQUFFLENBQUMsS0FBSyxHQUFHLG1DQUFtQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsbUNBQW1DLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNqSyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNyQixFQUFFLENBQUMsQ0FBQyxtQ0FBbUMsQ0FBQyxLQUFLLENBQUM7b0JBQzFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQztnQkFFdEQsWUFBWSxDQUFDLE1BQU0sY0FBYyxHQUFtQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLDZKQUE2SjtnQkFDclAsSUFBSSxZQUFZLEdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBZ0IsMklBQTJJO2dCQUN6TCxLQUFLLENBQUMsWUFBWSx5QkFBOEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsbUVBQW1FO2dCQUMzSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUIsQ0FBQztvQkFDRyxnSEFBZ0g7b0JBQ2hILElBQUksVUFBVSxHQUF1QixrREFBcUUsR0FBRyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQTZCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDbkwsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNWLENBQUM7d0JBQ0csT0FBTzt3QkFDUCxNQUFNLFNBQVMsR0FBWSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ25GLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQzs0QkFDdEIsWUFBWSxHQUFHLENBQUMsQ0FBQzt3QkFDckIsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQ2QsQ0FBQzs0QkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7NEJBQ25DLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQzt3QkFDcEIsQ0FBQztvQkFDTCxDQUFDO29CQUNELElBQUksQ0FDSixDQUFDO3dCQUNHLDBKQUEwSjt3QkFDMUosVUFBVSxJQUFJLHlDQUE2RCxDQUFDLENBQUMsNEJBQTRCO3dCQUN6RyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ3hELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQzs0QkFDdEIsWUFBWSxHQUFHLENBQUMsQ0FBQztvQkFDekIsQ0FBQztnQkFDTCxDQUFDO2dCQUNELEVBQUUsQ0FBQyxDQUFDLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUN4QixDQUFDO29CQUNHLGtIQUFrSDtvQkFDbEgsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQzt3QkFDdEIsY0FBYyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFVLHVCQUF1QjtvQkFDakYsSUFBSTt3QkFDQSxjQUFjLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDLENBQVcseUJBQXlCO2dCQUN2RixDQUFDO2dCQUNELEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDcEIsRUFBRSxDQUFDLENBQUMsbUNBQW1DLENBQUM7b0JBQ3BDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQztnQkFDcEQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUN6QyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sY0FBYyxHQUFvQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDcEYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3JHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUNyQyxDQUFDO2dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RELEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDdEIsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN4QyxDQUFDO1lBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLDRCQUE0QixFQUFFLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FDekgsQ0FBQztnQkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixLQUFLLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RCxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ3RCLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEMsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUM5QixDQUFDO1lBQ0csS0FBSyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ25DLEtBQUssQ0FBQyxVQUFVLENBQUMsbUNBQW1DLENBQUMsQ0FBQztZQUN0RCxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUM7WUFDekQsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM1QyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDM0IsQ0FBQztZQUNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FDbkMsQ0FBQztnQkFDRyxxRkFBcUY7Z0JBQ3JGLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ3ZELEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3pELEtBQUssQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQy9CLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFBQyxjQUFjLENBQUMsaURBQWlELENBQUMsQ0FBQztnQkFDcEYsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQ3BDLENBQUM7Z0JBQ0csdUZBQXVGO2dCQUN2RixLQUFLLENBQUMsV0FBVyxDQUFDLHFMQUFxTCxDQUFDLENBQUM7Z0JBQ3pNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFFaEIsWUFBWSxDQUFDLE1BQU0sVUFBVSxHQUFtQixNQUFNLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUM1RSxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBRTFHLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxHQUFHLEdBQXFCLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUN2RCxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxDQUFDLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzVMLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pFLEtBQUssQ0FBQyxJQUFJLENBQUMsb0VBQW9FLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxtRkFBbUYsQ0FBQyxDQUFDO2dCQUMvTCxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxFQUFFLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFFdkIsS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2dCQUNoQyxHQUFHLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQ2pDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLGdCQUFRLENBQUMsR0FBRyxFQUFDLENBQUMsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDNUwsS0FBSyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakUsS0FBSyxDQUFDLElBQUksQ0FBQyxrRkFBa0YsQ0FBQyxDQUFDO2dCQUMvRixLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxFQUFFLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFFdkIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQ2pDLENBQUM7Z0JBQ0csc0NBQXNDO2dCQUN0Qyw2SEFBNkg7Z0JBQzdILHFGQUFxRjtnQkFDckYsMklBQTJJO2dCQUMzSSx1SUFBdUk7Z0JBQ3ZJLHdHQUF3RztnQkFDeEcsNktBQTZLO2dCQUM3SyxLQUFLLENBQUMsV0FBVyxDQUFDLHVLQUF1SyxDQUFDLENBQUM7Z0JBQzNMLEtBQUssQ0FBQyxJQUFJLENBQUMscUZBQXFGLENBQUMsQ0FBQztnQkFDbEcsS0FBSyxDQUFDLElBQUksQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO2dCQUNyRSxZQUFZLENBQUMsTUFBTSxHQUFHLEdBQTJCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZO2dCQUM1SSxLQUFLLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ25FLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQzdCLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDBPQUEwTyxDQUFDLENBQUM7WUFDOVAsTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRWxDLDRHQUE0RztZQUM1RyxpTEFBaUw7WUFDakwsdUtBQXVLO1lBQ3ZLLG9MQUFvTDtZQUNwTCxrTEFBa0w7WUFDbEwscUtBQXFLO1lBQ3JLLHdHQUF3RztZQUN4RyxNQUFNLFNBQVMsR0FBd0IsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDdEQsTUFBTSxRQUFRLEdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDM0MsTUFBTSxRQUFRLEdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFFNUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUQsTUFBTSxHQUFHLEdBQXFCLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQ3pELEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksY0FBTSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkosRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQzFCLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNyQixNQUFNLFFBQVEsR0FBVyxJQUFJLENBQUM7Z0JBQzlCLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFHLEdBQUcsQ0FBQztnQkFBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO29CQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7Z0JBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxRQUFRLEdBQUcsUUFBUSxDQUFDO29CQUFDLE9BQU8sR0FBRyxRQUFRLEdBQUcsUUFBUSxDQUFDO2dCQUM5SixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLFFBQVEsR0FBRyxHQUFHLENBQUM7Z0JBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztvQkFBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO2dCQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztvQkFBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDOUosS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xFLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDNUYsTUFBTSxHQUFHLEdBQVcsSUFBSSxjQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztnQkFDM0UsTUFBTSxHQUFHLEdBQVcsSUFBSSxjQUFNLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRyx5R0FBeUc7Z0JBQ3pHLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hILEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixDQUFDO1lBQ0QsS0FBSyxDQUFDLFdBQVcsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1lBQ3JELFlBQVksQ0FBQyxNQUFNLGFBQWEsR0FBbUIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUIsQ0FBQztnQkFDRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixJQUFJLGFBQWEsR0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBSyw0QkFBNEI7Z0JBQ3BFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsSUFBSSxHQUFDLFFBQVEsRUFBQyxFQUFFLEdBQUMsUUFBUSxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzVJLGFBQWEsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO2dCQUM3QixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2QsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDaEIsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLGFBQWEsU0FBUyxDQUFDLENBQUM7WUFDOUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQ2xDLENBQUM7WUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sUUFBUSxHQUEyQixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztnQkFDNUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNqRyxLQUFLLENBQUMsVUFBVSxDQUFDLG9CQUFvQixFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQ2pHLEtBQUssQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQztnQkFDckMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNqRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDJCQUF3QyxDQUFDO29CQUN2RyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQzlCLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMseUNBQXlDLENBQUMsQ0FBQyxDQUM5RCxDQUFDO2dCQUNHLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBMkIsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztnQkFDdEcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ3pJLEtBQUssQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUN6SSxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDekksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQ2pDLENBQUM7Z0JBQ0csS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUM5QixZQUFZLENBQUMsTUFBTSxRQUFRLEdBQTRCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3pHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUMzQixDQUFDO29CQUNHLE1BQU0sS0FBSyxHQUFXLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQ2xDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQztvQkFDekYsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN2QixDQUFDO2dCQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUMzQixDQUFDO2dCQUNHLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBNEIsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBRSxDQUFDLENBQUM7Z0JBQzlMLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUMzQixDQUFDO29CQUNHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2hCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxFQUFFLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUMvRyxDQUFDO3dCQUNHLElBQUksQ0FBQyxHQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3pDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQzFELEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDOUQsQ0FBQztvQkFDRCxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNsQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xCLENBQUM7Z0JBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUMxQyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUEyQixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksc0JBQWMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMvSixZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTJCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQW1DLENBQUM7WUFDak0sWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUEyQixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksc0JBQWMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsaURBQXlFLENBQUMsQ0FBQztZQUM5TyxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTJCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMseUJBQXFDLENBQUM7WUFDck0sWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUEyQixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksc0JBQWMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHVCQUFtQyxDQUFDO1lBQ2xNO2dCQUEyQixNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBK0IsSUFBWSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQUU7WUFDeE0sWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUEyQixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksc0JBQWMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0NBQTBDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBRWpQLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUM3QixZQUFZLENBQUMsTUFBTSxPQUFPLEdBQTJCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBQzlHLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsMkNBQStELENBQUMsQ0FBQztZQUN6SSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFBQyxjQUFjLENBQUMscUZBQXFGLENBQUMsQ0FBQztZQUN4SCxLQUFLLENBQUMsU0FBUyxDQUFDLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLHVCQUFtQyxDQUFDO1lBRWxILEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQzVDLENBQUM7WUFDRyxZQUFZLENBQUMsTUFBTSxTQUFTLEdBQW9CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDM0UsWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUEyQixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksc0JBQWMsQ0FBQyxJQUFJLEdBQUMsRUFBRSxFQUN2RixNQUFNO2dCQUNOLHFEQUFxRDtnQkFDckQsMkRBQTJEO2dCQUMzRCw2REFBNkQ7Z0JBQzdELHlEQUF5RDtnQkFDekQsc0RBQXNEO2dCQUN0RCxrREFBa0Q7Z0JBQ2xELFFBQVE7Z0JBQ1IsVUFBVTtnQkFDVix3QkFBd0IsQ0FBQyxDQUFDLENBQUM7WUFFL0IsS0FBSyxDQUFDLFlBQVksdUJBQTZCLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbEYsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSwyQkFBb0MsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsc0JBQThCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZOLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNwQyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sT0FBTyxHQUFvQixNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RFLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFFNUUsWUFBWSxDQUFDLE1BQU0sR0FBRyxHQUFxQixNQUFNLENBQUMsS0FBSyxFQUFFLENBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFFLENBQUMsQ0FBQztZQUNqRyxLQUFLLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFekUsMERBQTBEO1lBQzFELHVLQUF1SztZQUN2SyxZQUFZLENBQUMsTUFBTSxNQUFNLEdBQTJCLE1BQU0sQ0FBQyxZQUFZLEVBQUUsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEcsWUFBWSxDQUFDLE1BQU0sYUFBYSxHQUFtQixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzlFLFlBQVksQ0FBQyxNQUFNLFlBQVksR0FBbUIsTUFBTSxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUM5RSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksWUFBWSxDQUFDLEtBQUssS0FBSyxHQUFHLENBQUM7Z0JBQzdDLFlBQVksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3pDLE9BQU8sWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQzNDLENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sS0FBSyxHQUFtQixNQUFNLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNoRSxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDMUQsYUFBYSxDQUFDLEtBQUssR0FBRyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUMsQ0FBQyxDQUFDLEdBQUcsb0JBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzNFLEtBQUssQ0FBQyxLQUFLLElBQUksSUFBSSxHQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7Z0JBQ3hDLFlBQVksQ0FBQyxLQUFLLElBQUksR0FBRyxHQUFDLElBQUksQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEksS0FBSyxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUVoSCxtQ0FBbUM7WUFDbkMsMEpBQTBKO1lBQzFKO2dCQUVXLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBUyxFQUFFLENBQVMsSUFBWSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN0RSxNQUFNLENBQUMsR0FBRyxDQUFDLElBQVMsRUFBRSxDQUFTLElBQVksTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzthQUNuRjtZQUNELFlBQVksQ0FBQyxNQUFNLFNBQVMsR0FBbUIsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsRUFBRSxhQUFhLEdBQW1CLE1BQU0sQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkksS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN4SSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3RHLE1BQU0sSUFBSSxHQUFxQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDL0YsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2hHLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN4RyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFbEIsZ0NBQWdDO1lBQ2hDLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBbUIsTUFBTSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsRUFBRSxZQUFZLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUNsQixDQUFDO2dCQUNHLFFBQVEsQ0FBQyxLQUFLLElBQUksWUFBWSxDQUFDLEtBQUssR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQztnQkFDckUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQztvQkFBQyxZQUFZLENBQUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDO2dCQUFDLENBQUM7Z0JBQ2xGLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLENBQUM7b0JBQUMsWUFBWSxDQUFDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztnQkFBQyxDQUFDO1lBQ3RGLENBQUM7WUFFRCxtSkFBbUo7WUFDbkosS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6RCxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRTNCLE1BQU0sa0JBQWtCLEdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ2hILE1BQU0sR0FBRyxHQUFXLEdBQUcsQ0FBQyxrQkFBa0IsR0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDdEUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUMxRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUMzQyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sS0FBSyxHQUFtQixNQUFNLENBQUMsV0FBVyxFQUFFLElBQUksZUFBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFFM0csWUFBWSxDQUFDLE1BQU0sR0FBRyxHQUFvQixNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9ELFlBQVksQ0FBQyxNQUFNLGFBQWEsR0FBb0IsTUFBTSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNsRixZQUFZLENBQUMsTUFBTSxrQkFBa0IsR0FBb0IsTUFBTSxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzdGLFlBQVksQ0FBQyxNQUFNLFlBQVksR0FBb0IsTUFBTSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNoRixLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLHlFQUF5RSxDQUFDLENBQUM7WUFDbEwsS0FBSyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ25HLEtBQUssQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbEgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLDZEQUE2RCxDQUFDLENBQUM7WUFDak0sTUFBTSxVQUFVLEdBQXdCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLGdCQUF5QixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyw2QkFBc0MsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLHlCQUFrQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUE4QixDQUFDLENBQUM7WUFFaFIsS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUM1QixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFBQyxjQUFjLENBQUMsMkdBQTJHLENBQUMsQ0FBQztZQUM5SSxLQUFLLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBRXhELEtBQUssQ0FBQyxJQUFJLENBQUMsOEJBQThCLENBQUMsQ0FBQztZQUMzQyxLQUFLLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLGtCQUEwQixVQUFVLENBQUMsQ0FBQztZQUVsRixLQUFLLENBQUMsSUFBSSxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDL0MsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxxQkFBNEIsVUFBVSxDQUFDLENBQUM7WUFFckYsS0FBSyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1lBQ3hDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQyx5TkFBeU4sQ0FBQyxDQUFDO1lBQzVQLEtBQUssQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUscUNBQTBELEdBQUcsVUFBVSxDQUFDLENBQUM7WUFFckgsS0FBSyxDQUFDLElBQUksQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1lBRXJELDJCQUEyQjtZQUMzQixZQUFZLENBQUMsTUFBTSxvQkFBb0IsR0FBb0IsTUFBTSxDQUFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2pHLFlBQVksQ0FBQyxNQUFNLGFBQWEsR0FBMkIsTUFBTSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN2RixFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQztnQkFDNUIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7b0JBQ0csYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLGNBQU0sRUFBRSxDQUFDO29CQUN0QyxpSEFBaUg7b0JBQ2pILE1BQU0sQ0FBQyxHQUFxQixDQUFFLEdBQUcsQ0FBRSxDQUFDO29CQUNwQyxNQUFNLENBQUMsR0FBcUIsQ0FBRSxHQUFHLENBQUUsQ0FBQztvQkFDcEMsTUFBTSxDQUFDLEdBQXFCLENBQUUsR0FBRyxDQUFFLENBQUM7b0JBQ3BDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDeEQsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNoQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2hDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDaEMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsUUFBUTtnQkFDNUMsQ0FBQztZQUNMLG9CQUFvQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFFbEMsWUFBWSxDQUFDLE1BQU0sWUFBWSxHQUFtQixNQUFNLENBQUMsY0FBYyxFQUFFLElBQUksY0FBTSxFQUFFLENBQUMsQ0FBQztZQUN2RixJQUFJLFVBQVUsR0FBWSxLQUFLLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3BGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixVQUFVLEdBQUcsVUFBVSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbkQsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQ2YsQ0FBQztnQkFDRyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN4QixZQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0MsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDakMsQ0FBQztnQkFDRywrREFBK0Q7Z0JBQy9ELEtBQUssQ0FBQyxJQUFJLENBQUMsaURBQWlELENBQUMsQ0FBQztnQkFDOUQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLFVBQVUsMEJBQW9DLDBCQUFxQyxDQUFDLENBQUM7Z0JBQ2pJLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN0QixLQUFLLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLDhDQUFtRSxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNwSSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN2QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsS0FBSyxFQUFFLDhDQUFtRSxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUM1SSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3pDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDdEIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUQsQ0FBQztvQkFDRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNoQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ2QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDeEQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxrQ0FBMEQscUJBQWdDLEVBQUUsSUFBSSxjQUFNLENBQUMsRUFBRSxFQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7d0JBQ3RLLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksY0FBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQjtvQkFFakosRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FDaEMsQ0FBQzt3QkFDRyx3RkFBd0Y7d0JBQ3hGLDJFQUEyRTt3QkFDM0Usd0ZBQXdGO3dCQUN4RiwyRUFBMkU7d0JBQzNFLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO29CQUM5QixDQUFDO29CQUVELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDbEIsQ0FBQztnQkFDRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBRUQsS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ2pDLEtBQUssQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRTdFLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDNUIsWUFBWSxDQUFDLE1BQU0sS0FBSyxHQUFvQixNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2xFLFlBQVksQ0FBQyxNQUFNLFNBQVMsR0FBb0IsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMxRSxZQUFZLENBQUMsTUFBTSxZQUFZLEdBQW9CLE1BQU0sQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDaEYsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUFvQixNQUFNLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzNFLFlBQVksQ0FBQyxNQUFNLFdBQVcsR0FBbUIsTUFBTSxDQUFDLGFBQWEsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3BHLFlBQVksQ0FBQyxNQUFNLFdBQVcsR0FBbUIsTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMxRSxZQUFZLENBQUMsTUFBTSxXQUFXLEdBQW1CLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDMUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUMzRSxLQUFLLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDdkYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ2hHLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUNqQixDQUFDO2dCQUNHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN2RixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQ3BCLENBQUM7b0JBQ0csS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNqQixLQUFLLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsS0FBSyxFQUFFLG9CQUErQixVQUFVLENBQUMsQ0FBQztnQkFDakcsQ0FBQztZQUNMLENBQUM7WUFDRCxLQUFLLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSwwREFBMEQsQ0FBQyxDQUFDO1lBQ2pKLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLDREQUE0RCxDQUFDLENBQUM7WUFDbkosS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7WUFDcEYsSUFBSSxLQUFLLEdBQXdCLFVBQVUsQ0FBQztZQUM1QyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQUMsS0FBSyxtQkFBK0IsQ0FBQyxDQUFDLDBFQUEwRTtZQUNsSSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO2dCQUFDLEtBQUssc0JBQWdDLENBQUM7WUFDM0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO2dCQUFDLEtBQUssMkJBQXFDLENBQUM7WUFDcEUsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7Z0JBQUMsS0FBSyw2QkFBb0MsQ0FBQztZQUN2RSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztnQkFBQyxLQUFLLCtCQUFzQyxDQUFDO1lBQ3pFLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO2dCQUFDLEtBQUsscUJBQWdDLENBQUM7WUFDbkUsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxrQkFBMkIsQ0FBQztZQUM5RCxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztnQkFBQyxLQUFLLG1CQUEyQixDQUFDO1lBQzlELEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO2dCQUFDLEtBQUssbUJBQTJCLENBQUM7WUFDOUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFakcsS0FBSyxDQUFDLElBQUksQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1lBQ3JELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQyx1VkFBdVYsQ0FBQyxDQUFDO1lBQzFYLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzVCLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxtQ0FBbUQsQ0FBQyxDQUFDO1lBQ25GLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUM1QixLQUFLLENBQUMsbUJBQW1CLENBQUMsbUNBQW1ELENBQUMsQ0FBQztZQUVuRixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDcEMsQ0FBQztZQUNHLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEdBQW1CLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEcsWUFBWSxDQUFDLE1BQU0sT0FBTyxHQUFtQixNQUFNLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBbUIsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNuSCxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFDekssS0FBSyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1lBQzVMLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQzlDLENBQUM7WUFDRyxZQUFZLENBQUMsTUFBTSxLQUFLLEdBQTZCLE1BQU0sQ0FBbUIsT0FBTyxFQUFFLENBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFFLENBQUMsQ0FBQztZQUNuSCxZQUFZLENBQUMsTUFBTSxLQUFLLEdBQTZCLE1BQU0sQ0FBbUIsT0FBTyxFQUFFLENBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFFLENBQUMsQ0FBQztZQUUzRyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0MsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzdELEtBQUssQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzNELEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNwRCxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0MsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDckQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRWhCLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDN0QsS0FBSyxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDM0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3BELEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNyRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFaEIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9DLEtBQUssQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUM3RCxLQUFLLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUMzRCxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0MsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3BELEtBQUssQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBRXJELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQ3ZDLENBQUM7WUFDRyxNQUFNLE9BQU8sR0FBVyxDQUFDLENBQUM7WUFDMUIsS0FBSyxDQUFDLFlBQVksdUJBQTRCLElBQUksY0FBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBRTVFLFlBQVksQ0FBQyxNQUFNLFNBQVMsR0FBbUIsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN0RSxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxJQUFJLGNBQU0sQ0FBQyxFQUFFLEVBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVqQixZQUFZLENBQUMsTUFBTSxNQUFNLEdBQXFCLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUUsQ0FBQyxDQUFDO1lBQy9HLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDckIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7Z0JBQ0csRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzVCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hCLEtBQUssQ0FBQyxjQUFjLGtCQUFtQixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JFLEtBQUssQ0FBQyxjQUFjLHlCQUEwQixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzVFLEtBQUssQ0FBQyxjQUFjLHdCQUF5QixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzNFLEtBQUssQ0FBQyxjQUFjLHNCQUFzQixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hFLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNsSCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO29CQUM5QyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RCxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEIsQ0FBQztZQUNELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUVkLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3JCLFlBQVksQ0FBQyxNQUFNLE9BQU8sR0FBMEIsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBRSxDQUFDLENBQUM7WUFDbEcsTUFBTSxJQUFJLEdBQVcsQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0saUJBQWlCLEdBQXFCLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssR0FBQyxDQUFDLElBQUksR0FBQyxDQUFDLENBQUMsR0FBQyxPQUFPLENBQUMsR0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxRixHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFDN0IsQ0FBQztnQkFDRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDN0IsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLElBQUksRUFBRSxFQUFFLEVBQUUsRUFDaEMsQ0FBQztvQkFDRyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBQyxJQUFJLEdBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ3pCLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLGlCQUFpQixFQUFFLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3JILEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsSUFBSSxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7d0JBQzlDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ3hELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDbEIsQ0FBQztnQkFDRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUNELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUVkLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3JCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUMxQixDQUFDO2dCQUNHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM1QixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixLQUFLLENBQUMsWUFBWSx1QkFBNEIsRUFBRSxDQUFDLENBQUM7Z0JBQ2xELEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUMzSCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BCLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQixDQUFDO1lBQ0QsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUNyQyxDQUFDO1FBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNwQyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sbUJBQW1CLEdBQW9CLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMvRixLQUFLLENBQUMsUUFBUSxDQUFDLHFCQUFxQixFQUFFLENBQUMsS0FBSyxHQUFHLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBRWhILEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUM3QixZQUFZLENBQUMsTUFBTSxJQUFJLEdBQW1CLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDN0QsSUFBSSxTQUFTLEdBQVksS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM5QyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QixTQUFTLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsNEJBQXVDLElBQUksU0FBUyxDQUFDO1lBQzFJLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLGNBQU0sQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLGlDQUF1QyxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLDRCQUFvQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4TSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFDNUIsQ0FBQztnQkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUM7Z0JBQ3ZFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztvQkFDOUIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzlCLENBQUM7WUFDRCxFQUFFLENBQUMsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUM7Z0JBQy9CLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFakIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRWpCLEtBQUssQ0FBQyxZQUFZLHdCQUE4QixHQUFHLENBQUMsQ0FBQztZQUNyRCxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsNEJBQW9DLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hILEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDMUIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFDNUIsQ0FBQztnQkFDRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUNULEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDdkIsTUFBTSxHQUFHLEdBQVcsR0FBRyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUN6RSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzdDLENBQUM7WUFDRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBRXBCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNwQyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sQ0FBQyxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzdELEtBQUssQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUNqQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDakQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QixLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDcEQsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDMUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDbEQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLElBQUksQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQyw2RUFBNkUsQ0FBQyxDQUFDO1lBQ2hILEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDOUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ2xDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxD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QyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQy9NLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWEsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3pLLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVksQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3pLLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxD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QUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzNILFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQXlCLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzdJLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksZ0JBQXlCLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzlJLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxrQ0FBb0QsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztZQUM3SyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxF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QUFFLENBQUMsQ0FDckQsQ0FBQztnQkFDRyxXQUFXLENBQUMsS0FBSyxHQUFHLGNBQWMsR0FBRyxLQUFLLENBQUM7Z0JBQzNDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3hCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7UUFDRCxTQUFTLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLGNBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsR0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSx1REFBdUQ7UUFDMUssR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7WUFDN0MsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLGNBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2RlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHdCQUF3QjtBQUN4QixjQUFjOztBQUVkLGlHQUFpRztBQUNqRyxzSUFBc0k7QUFDdEksdUdBQXVHO0FBQ3ZHLGdKQUFnSjtBQUNoSiwwSkFBMEo7QUFDMUosMEZBQTBGO0FBQzFGLHNLQUFzSztBQUN0Syx3SEFBd0g7QUFDeEgsYUFBYTtBQUNiLCtEQUErRDtBQUUvRCxzSkFBc0o7QUFDdEosaUpBQWlKO0FBQ2pKLHNJQUFzSTtBQUN0SSw0SkFBNEo7QUFDNUosa0tBQWtLO0FBRWxLLDZEQUE2RDtBQUM3RCxrQ0FBa0M7QUFDbEMsU0FBUztBQUVULHFCQUFxQjtBQUNyQixrREFBa0Q7QUFDbEQsd0VBQXdFO0FBQ3hFLDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsb0VBQW9FO0FBQ3BFLDBDQUEwQztBQUMxQyxRQUFRO0FBQ1IsMENBQTBDO0FBQzFDLFNBQVM7QUFFVCxpQ0FBaUM7QUFDakMsbUNBQXdDO0FBQ3hDLG1DQUFvQztBQUNwQyxtQ0FBdUM7QUFDdkMsbUNBQXlDO0FBcUJ6QyxtQ0FBbUM7QUFDbkMsbUNBQW1EO0FBQ25ELG1DQUFtRDtBQUNuRCxtQ0FBbUM7QUFDbkMsbUNBQWtDO0FBRWxDLG9DQUFxQztBQUVyQyxvQ0FBMEM7QUFDMUMsb0NBQTBDO0FBQzFDLG9DQUEyQztBQUkzQyxrQkFBa0I7QUFDbEIsa0lBQWtJO0FBQ2xJLDZCQUE2QjtBQUM3QixTQUFTO0FBQ1QsbUJBQW1CO0FBQ25CLCtKQUErSjtBQUMvSixzTUFBc007QUFDdE0sZ0lBQWdJO0FBQ2hJLDhIQUE4SDtBQUM5SCx3VEFBd1Q7QUFDeFQsMkNBQTJDO0FBQzNDLHFJQUFxSTtBQUNySSxTQUFTO0FBQ1QsMEJBQTBCO0FBQzFCLDZIQUE2SDtBQUM3SCw0SUFBNEk7QUFDNUksNkpBQTZKO0FBQzdKLG1JQUFtSTtBQUNuSSxzQkFB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QyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQy9HLENBQUM7d0JBQ0csSUFBSSxDQUFDLEdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDekMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQzFELEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUM5RCxDQUFDO29CQUNELEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFBQyxLQUFLLENBQUMs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LEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztZQUFDLENBQUMsSUFBSSxPQUFPLENBQUM7WUFDbEcsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDek0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ1osQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1FBQzFCLENBQUM7UUFDRCxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssR0FBQyxPQUFPLENBQUM7UUFDdEgsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUM1RyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUNsSCxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsa0NBQW9ELENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUN4SyxTQUFTLENBQUMsaUJBQWlCLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUM5SixTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxjQUFNLENBQUMs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QUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUNyRCxDQUFDO2dCQUNHLFdBQVcsQ0FBQyxLQUFLLEdBQUcsY0FBYyxHQUFHLEtBQUssQ0FBQztnQkFDM0MsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixDQUFDO1FBQ0wsQ0FBQztRQUNELFNBQVMsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFNLHVEQUF1RDtRQUMxSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQztZQUM3QyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxF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 \ No newline at end of file diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO1lBQ25DLE1BQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQztZQUNsQyxNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7SUFDZCxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUMzQiwwQkFBMEI7SUFFMUIsYUFBYTtJQUNiLHdKQUF3SjtJQUN4SixxSEFBcUg7SUFDckgsdUtBQXVLO0lBQ3ZLLGtNQUFrTTtJQUNsTSxxRUFBcUU7SUFDckUsOEhBQThIO0lBQzlILG9DQUFvQztJQUNwQyw0QkFBNEI7SUFDNUIsOEVBQThFO0lBQzlFLGdGQUFnRjtJQUNoRiwwRUFBMEU7SUFDMUUsMkVBQTJFO0lBQzNFLHNJQUFzSTtJQUN0SSwyQkFBMkI7SUFFM0IsSUFBSSxnQkFBZ0IsR0FBWSxJQUFJLENBQUM7SUFDckMsSUFBSSxtQkFBbUIsR0FBWSxLQUFLLENBQUM7SUFDekMsSUFBSSxXQUFXLEdBQVcsSUFBSSxpQkFBTSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRTdELFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBVyxHQUFHLENBQUM7SUFFakMsTUFBTSxhQUFhLEdBQWlCLElBQUksa0NBQVksRUFBRSxDQUFDO0lBRXZELElBQUksTUFBTSxHQUFXO1FBQ2pCLGdDQUFnQztRQUNoQyw4QkFBOEI7UUFDOUIsNkJBQTZCO1FBQzdCLGNBQWM7UUFDZCxFQUFFO0tBQ0wsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFYiwyQkFBMkIsS0FBYSxFQUFFLFNBQXlDLElBQUk7UUFDbkYsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsTUFBTSw0QkFBcUMsQ0FBQztRQUMvRCxLQUFLLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxHQUFHLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLGlCQUFNLENBQUMsSUFBSSwyQkFBcUMsQ0FBQztRQUMxSCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FDMUIsQ0FBQztZQUNHLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQixLQUFLLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdCLEtBQUssQ0FBQyxlQUFlLENBQUMsZ0RBQWdELENBQUMsQ0FBQztZQUN4RSxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxJQUFJLENBQUM7WUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakIsQ0FBQztRQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDVCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksaUJBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUMxRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUNELEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxtQkFBbUIsR0FBWSxLQUFLLENBQUM7SUFFekMsWUFBWTtJQUNaLElBQUksSUFBSSxHQUFZLEtBQUssQ0FBQztJQUMxQixlQUFlLElBQVk7UUFDdkIscUhBQXFIO1FBQ3JILGlHQUFpRztRQUNqRyx1R0FBdUc7UUFDdkcsd0hBQXdIO1FBQ3hILFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFMUIsMEJBQTBCO1FBQzFCLGtIQUFrSDtRQUNsSCxDQUFDO1lBQ0cseUJBQXlCO1lBQ3pCLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBb0MsOENBQThDO1lBQzlHLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyw2Q0FBNkM7WUFDN0csS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBbUIsMkJBQTJCO1lBQzNGLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzVCLGdCQUFnQixHQUFHLENBQUMsZ0JBQWdCLENBQUM7WUFDekMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2dCQUMvQixtQkFBbUIsR0FBRyxDQUFDLG1CQUFtQixDQUFDO1lBQy9DLEtBQUssQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGNBQWMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBRXhJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7Z0JBQzlCLGFBQWEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQzdDLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLGFBQWEsQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNoRSxNQUFNLEVBQUUsR0FBdUIsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3BELG9FQUFvRTtZQUNwRSxzRUFBc0U7WUFDdEUscUVBQXFFO1lBQ3JFLG9FQUFvRTtZQUNwRSxxRUFBcUU7WUFDckUsS0FBSyxDQUFDLElBQUksQ0FBQywwQ0FBMEMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDbkUsc0VBQXNFO1lBQ3RFLEtBQUssQ0FBQyxJQUFJLENBQUMsMENBQTBDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3BFLEtBQUssQ0FBQyxJQUFJLENBQUMsMENBQTBDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3BFLHVFQUF1RTtZQUN2RSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQy9CLG1CQUFtQixHQUFHLENBQUMsbUJBQW1CLENBQUM7WUFDL0MsRUFBRSxDQUFDLENBQUMsbUJBQW1CLENBQUM7Z0JBQ3BCLGlCQUFpQixDQUFDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxHQUFHLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUMxRyxDQUFDO1FBRUQsMkdBQTJHO1FBQzNHLEVBQUUsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztZQUN0QixLQUFLLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxHQUFHLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLDRCQUFxQyxDQUFDO1lBQ2hJLEtBQUssQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQztZQUN6QyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELHdGQUF3RjtRQUN4RixFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7WUFDbkIsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksaUJBQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLHVCQUEwQixDQUFBLENBQUMsMktBQTJLO1lBQ2hQLFVBQVUsQ0FBQSwyQkFBYyxDQUFDLENBQUMsS0FBSyxHQUFHLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUNyRixDQUFDO1FBRUQsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRXRCLFlBQVk7UUFDWixNQUFNLEVBQUUsR0FBaUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUN2RCxFQUFFLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN2RSxFQUFFLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEYsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDcEMsOEdBQThHO1FBRTlHLFVBQVUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUU3QixFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUNqQyxNQUFNLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDTCxDQUFDO0lBRUQ7UUFDSSxVQUFVO1FBQ1YsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ0osS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNsQixLQUFLLEVBQUUsQ0FBQztJQUNaLENBQUM7QUFDTCxDQUFDO0FBektELHVCQXlLQyJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/imgui b/imgui index e916310..41ecebf 160000 --- a/imgui +++ b/imgui @@ -1 +1 @@ -Subproject commit e916310b2e1f9cacbb2b9ce192a3dfb359e4b509 +Subproject commit 41ecebff5a63b1fa71ad0d1ef6f1e6d3d39ef07d diff --git a/imgui.js b/imgui.js index 0fc91d6..686abff 100644 --- a/imgui.js +++ b/imgui.js @@ -129,7 +129,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -272,7 +272,7 @@ exports.ImGuiTextBuffer = ImGuiTextBuffer; // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -420,7 +420,7 @@ exports.ImGuiTextEditCallbackData = ImGuiTextEditCallbackData; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -class ImGuiSizeConstraintCallbackData { +class ImGuiSizeCallbackData { constructor(native) { this.native = native; } @@ -433,7 +433,7 @@ get CurrentSize() { return this.native.getCurrentSize(); } get DesiredSize() { return this.native.getDesiredSize(); } } -exports.ImGuiSizeConstraintCallbackData = ImGuiSizeConstraintCallbackData; +exports.ImGuiSizeCallbackData = ImGuiSizeCallbackData; class ImGuiListClipper { get StartPosY() { return this.native.StartPosY; } get ItemsHeight() { return this.native.ItemsHeight; } @@ -524,7 +524,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif // Draw channels are used by the Columns API to "split" the render list into different channels while building, so items of each column can be batched together. @@ -681,6 +681,8 @@ class ImFontGlyph { } exports.ImFontGlyph = ImFontGlyph; +var bind_imgui_9 = require("./bind-imgui"); +exports.ImFontAtlasFlags = bind_imgui_9.ImFontAtlasFlags; // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -707,7 +709,7 @@ // IMGUI_API void Clear(); // Clear all // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -815,36 +817,37 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle { constructor() { - this.Alpha = 1.0; // Global alpha applies to everything in ImGui - this.WindowPadding = new ImVec2(8, 8); // Padding within a window - this.WindowRounding = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - this.WindowBorderSize = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.WindowMinSize = new ImVec2(32, 32); // Minimum window size - this.WindowTitleAlign = new ImVec2(0.0, 0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. - this.ChildRounding = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - this.ChildBorderSize = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.PopupRounding = 0.0; // Radius of popup window corners rounding. - this.PopupBorderSize = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.FramePadding = new ImVec2(4, 3); // Padding within a framed rectangle (used by most widgets) - this.FrameRounding = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - this.FrameBorderSize = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.ItemSpacing = new ImVec2(8, 4); // Horizontal and vertical spacing between widgets/lines - this.ItemInnerSpacing = new ImVec2(4, 4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) - this.TouchExtraPadding = new ImVec2(0, 0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! - this.IndentSpacing = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - this.ColumnsMinSpacing = 6.0; // Minimum horizontal spacing between two columns - this.ScrollbarSize = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - this.ScrollbarRounding = 9.0; // Radius of grab corners for scrollbar - this.GrabMinSize = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - this.GrabRounding = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - this.ButtonTextAlign = new ImVec2(0.5, 0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. - this.DisplayWindowPadding = new ImVec2(22, 22); // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. - this.DisplaySafeAreaPadding = new ImVec2(4, 4); // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. - this.AntiAliasedLines = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - this.AntiAliasedFill = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - this.CurveTessellationTol = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + this.Alpha = 1.0; + this.WindowPadding = new ImVec2(8, 8); + this.WindowRounding = 7.0; + this.WindowBorderSize = 0.0; + this.WindowMinSize = new ImVec2(32, 32); + this.WindowTitleAlign = new ImVec2(0.0, 0.5); + this.ChildRounding = 0.0; + this.ChildBorderSize = 1.0; + this.PopupRounding = 0.0; + this.PopupBorderSize = 1.0; + this.FramePadding = new ImVec2(4, 3); + this.FrameRounding = 0.0; + this.FrameBorderSize = 0.0; + this.ItemSpacing = new ImVec2(8, 4); + this.ItemInnerSpacing = new ImVec2(4, 4); + this.TouchExtraPadding = new ImVec2(0, 0); + this.IndentSpacing = 21.0; + this.ColumnsMinSpacing = 6.0; + this.ScrollbarSize = 16.0; + this.ScrollbarRounding = 9.0; + this.GrabMinSize = 10.0; + this.GrabRounding = 0.0; + this.ButtonTextAlign = new ImVec2(0.5, 0.5); + this.DisplayWindowPadding = new ImVec2(22, 22); + this.DisplaySafeAreaPadding = new ImVec2(4, 4); + this.MouseCursorScale = 1; + this.AntiAliasedLines = true; + this.AntiAliasedFill = true; + this.CurveTessellationTol = 1.25; this.Colors = []; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i] = new ImVec4(); } const _this = new ImGuiStyle(this); @@ -883,7 +886,7 @@ this.Colors = new Proxy([], { get: (target, key) => { if (key === "length") { - return 43 /* COUNT */; + return 45 /* COUNT */; } return this.internal.getColorsAt(Number(key)); }, @@ -932,6 +935,8 @@ get ButtonTextAlign() { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding() { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding() { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale() { return this.internal.MouseCursorScale; } + set MouseCursorScale(value) { this.internal.MouseCursorScale = value; } get AntiAliasedLines() { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill() { return this.internal.AntiAliasedFill; } @@ -964,10 +969,11 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i].Copy(other.Colors[i]); } return this; @@ -980,9 +986,6 @@ class ImGuiIO { constructor(native) { this.native = native; - // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. - // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. - // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -990,7 +993,7 @@ this.KeyMap = new Proxy([], { get: (target, key) => { if (key === "length") { - return 19 /* COUNT */; + return 21 /* COUNT */; } return this.native.getKeyMapAt(Number(key)); }, @@ -1022,11 +1025,33 @@ return this.native.setKeysDownAt(Number(key), value); } }); + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + this.NavInputs = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target, key, value) => { + return this.native.setNavInputsAt(Number(key), value); + } + }); //------------------------------------------------------------------ // [Internal] ImGui will maintain those fields. Forward compatibility not guaranteed! //------------------------------------------------------------------ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + this.MouseClickedPos = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 5; + } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1053,6 +1078,16 @@ return this.native.getKeysDownDurationAt(Number(key)); } }); + // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + this.NavInputsDownDuration = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); } //------------------------------------------------------------------ // Settings (fill once) // Default value: @@ -1062,6 +1097,12 @@ // float DeltaTime; // = 1.0f/60.0f // Time elapsed since last frame, in seconds. get DeltaTime() { return this.native.DeltaTime; } set DeltaTime(value) { this.native.DeltaTime = value; } + // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. + // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. + // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags() { return this.native.NavFlags; } + set NavFlags(value) { this.native.NavFlags = value; } // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). // float KeyRepeatRate; // = 0.050f // When holding a key/button, rate at which it repeats, in seconds. // void* UserData; // = NULL // Store your own data for retrieval by callbacks. @@ -1110,6 +1151,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. get MouseWheel() { return this.native.MouseWheel; } set MouseWheel(value) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + get MouseWheelH() { return this.native.MouseWheelH; } + set MouseWheelH(value) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor() { return this.native.MouseDrawCursor; } set MouseDrawCursor(value) { this.native.MouseDrawCursor = value; } @@ -1125,7 +1169,6 @@ // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows get KeySuper() { return this.native.KeySuper; } set KeySuper(value) { this.native.KeySuper = value; } - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] AddInputCharacter(c) { this.native.AddInputCharacter(c); } @@ -1134,7 +1177,7 @@ //------------------------------------------------------------------ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse() { return this.native.WantCaptureMouse; } set WantCaptureMouse(value) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. @@ -1146,6 +1189,12 @@ // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse() { return this.native.WantMoveMouse; } set WantMoveMouse(value) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive() { return this.native.NavActive; } + set NavActive(value) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible() { return this.native.NavVisible; } + set NavVisible(value) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate() { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1156,6 +1205,25 @@ get MouseDelta() { return this.native.getMouseDelta(); } } exports.ImGuiIO = ImGuiIO; +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +function CreateContext(shared_font_atlas = null) { + return bind.CreateContext(); +} +exports.CreateContext = CreateContext; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +function DestroyContext(ctx = null) { + return bind.DestroyContext(ctx); +} +exports.DestroyContext = DestroyContext; +// IMGUI_API ImGuiContext* GetCurrentContext(); +var bind_imgui_10 = require("./bind-imgui"); +exports.GetCurrentContext = bind_imgui_10.GetCurrentContext; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +var bind_imgui_11 = require("./bind-imgui"); +exports.SetCurrentContext = bind_imgui_11.SetCurrentContext; // Main // IMGUI_API ImGuiIO& GetIO(); function GetIO() { return new ImGuiIO(bind.GetIO()); } @@ -1187,9 +1255,6 @@ // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! function EndFrame() { bind.EndFrame(); } exports.EndFrame = EndFrame; -// IMGUI_API void Shutdown(); -function Shutdown() { bind.Shutdown(); } -exports.Shutdown = Shutdown; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! function ShowDemoWindow(p_open = null) { bind.ShowDemoWindow(p_open); } @@ -1237,6 +1302,64 @@ // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). function ShowUserGuide() { bind.ShowUserGuide(); } exports.ShowUserGuide = ShowUserGuide; +// IMGUI_API const char* GetVersion(); +var bind_imgui_12 = require("./bind-imgui"); +exports.GetVersion = bind_imgui_12.GetVersion; +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +function StyleColorsClassic(dst = null) { + if (dst === null) { + bind.StyleColorsClassic(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsClassic = StyleColorsClassic; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +function StyleColorsDark(dst = null) { + if (dst === null) { + bind.StyleColorsDark(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsDark = StyleColorsDark; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +function StyleColorsLight(dst = null) { + if (dst === null) { + bind.StyleColorsLight(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsLight = StyleColorsLight; // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). function Begin(name, open = null, flags = 0) { @@ -1255,8 +1378,8 @@ } exports.Begin = Begin; // IMGUI_API void End(); // finish appending to current window, pop it off the window stack. -var bind_imgui_9 = require("./bind-imgui"); -exports.End = bind_imgui_9.End; +var bind_imgui_13 = require("./bind-imgui"); +exports.End = bind_imgui_13.End; // IMGUI_API bool BeginChild(const char* str_id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // begin a scrolling region. size==0.0f: use remaining window size, size<0.0f: use remaining window size minus abs(size). size>0.0f: fixed size. each axis can use a different mode, e.g. ImVec2(0,400). // IMGUI_API bool BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // " function BeginChild(id, size = ImVec2.ZERO, border = false, extra_flags = 0) { @@ -1279,8 +1402,8 @@ } exports.GetContentRegionAvail = GetContentRegionAvail; // IMGUI_API float GetContentRegionAvailWidth(); // -var bind_imgui_10 = require("./bind-imgui"); -exports.GetContentRegionAvailWidth = bind_imgui_10.GetContentRegionAvailWidth; +var bind_imgui_14 = require("./bind-imgui"); +exports.GetContentRegionAvailWidth = bind_imgui_14.GetContentRegionAvailWidth; // IMGUI_API ImVec2 GetWindowContentRegionMin(); // content boundaries min (roughly (0,0)-Scroll), in window coordinates function GetWindowContentRegionMin(out = new ImVec2()) { return bind.GetWindowContentRegionMin(out); @@ -1292,8 +1415,8 @@ } exports.GetWindowContentRegionMax = GetWindowContentRegionMax; // IMGUI_API float GetWindowContentRegionWidth(); // -var bind_imgui_11 = require("./bind-imgui"); -exports.GetWindowContentRegionWidth = bind_imgui_11.GetWindowContentRegionWidth; +var bind_imgui_15 = require("./bind-imgui"); +exports.GetWindowContentRegionWidth = bind_imgui_15.GetWindowContentRegionWidth; // IMGUI_API ImDrawList* GetWindowDrawList(); // get rendering command-list if you want to append your own draw primitives function GetWindowDrawList() { return new ImDrawList(bind.GetWindowDrawList()); @@ -1310,20 +1433,20 @@ } exports.GetWindowSize = GetWindowSize; // IMGUI_API float GetWindowWidth(); -var bind_imgui_12 = require("./bind-imgui"); -exports.GetWindowWidth = bind_imgui_12.GetWindowWidth; -// IMGUI_API float GetWindowHeight(); -var bind_imgui_13 = require("./bind-imgui"); -exports.GetWindowHeight = bind_imgui_13.GetWindowHeight; -// IMGUI_API bool IsWindowCollapsed(); -var bind_imgui_14 = require("./bind-imgui"); -exports.IsWindowCollapsed = bind_imgui_14.IsWindowCollapsed; -// IMGUI_API bool IsWindowAppearing(); -var bind_imgui_15 = require("./bind-imgui"); -exports.IsWindowAppearing = bind_imgui_15.IsWindowAppearing; -// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows var bind_imgui_16 = require("./bind-imgui"); -exports.SetWindowFontScale = bind_imgui_16.SetWindowFontScale; +exports.GetWindowWidth = bind_imgui_16.GetWindowWidth; +// IMGUI_API float GetWindowHeight(); +var bind_imgui_17 = require("./bind-imgui"); +exports.GetWindowHeight = bind_imgui_17.GetWindowHeight; +// IMGUI_API bool IsWindowCollapsed(); +var bind_imgui_18 = require("./bind-imgui"); +exports.IsWindowCollapsed = bind_imgui_18.IsWindowCollapsed; +// IMGUI_API bool IsWindowAppearing(); +var bind_imgui_19 = require("./bind-imgui"); +exports.IsWindowAppearing = bind_imgui_19.IsWindowAppearing; +// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows +var bind_imgui_20 = require("./bind-imgui"); +exports.SetWindowFontScale = bind_imgui_20.SetWindowFontScale; // IMGUI_API void SetNextWindowPos(const ImVec2& pos, ImGuiCond cond = 0, const ImVec2& pivot = ImVec2(0,0)); // set next window position. call before Begin(). use pivot=(0.5f,0.5f) to center on given point, etc. function SetNextWindowPos(pos, cond = 0, pivot = ImVec2.ZERO) { bind.SetNextWindowPos(pos, cond, pivot); @@ -1338,7 +1461,7 @@ function SetNextWindowSizeConstraints(size_min, size_max, custom_callback = null, custom_callback_data = null) { if (custom_callback) { function _custom_callback(data) { - const _data = new ImGuiSizeConstraintCallbackData(data); + const _data = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1360,10 +1483,13 @@ } exports.SetNextWindowCollapsed = SetNextWindowCollapsed; // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() -var bind_imgui_17 = require("./bind-imgui"); -exports.SetNextWindowFocus = bind_imgui_17.SetNextWindowFocus; +var bind_imgui_21 = require("./bind-imgui"); +exports.SetNextWindowFocus = bind_imgui_21.SetNextWindowFocus; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +var bind_imgui_22 = require("./bind-imgui"); +exports.SetNextWindowBgAlpha = bind_imgui_22.SetNextWindowBgAlpha; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1408,23 +1534,23 @@ } exports.SetWindowFocus = SetWindowFocus; // IMGUI_API float GetScrollX(); // get scrolling amount [0..GetScrollMaxX()] -var bind_imgui_18 = require("./bind-imgui"); -exports.GetScrollX = bind_imgui_18.GetScrollX; -// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] -var bind_imgui_19 = require("./bind-imgui"); -exports.GetScrollY = bind_imgui_19.GetScrollY; -// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X -var bind_imgui_20 = require("./bind-imgui"); -exports.GetScrollMaxX = bind_imgui_20.GetScrollMaxX; -// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y -var bind_imgui_21 = require("./bind-imgui"); -exports.GetScrollMaxY = bind_imgui_21.GetScrollMaxY; -// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] -var bind_imgui_22 = require("./bind-imgui"); -exports.SetScrollX = bind_imgui_22.SetScrollX; -// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] var bind_imgui_23 = require("./bind-imgui"); -exports.SetScrollY = bind_imgui_23.SetScrollY; +exports.GetScrollX = bind_imgui_23.GetScrollX; +// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] +var bind_imgui_24 = require("./bind-imgui"); +exports.GetScrollY = bind_imgui_24.GetScrollY; +// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X +var bind_imgui_25 = require("./bind-imgui"); +exports.GetScrollMaxX = bind_imgui_25.GetScrollMaxX; +// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y +var bind_imgui_26 = require("./bind-imgui"); +exports.GetScrollMaxY = bind_imgui_26.GetScrollMaxY; +// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] +var bind_imgui_27 = require("./bind-imgui"); +exports.SetScrollX = bind_imgui_27.SetScrollX; +// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] +var bind_imgui_28 = require("./bind-imgui"); +exports.SetScrollY = bind_imgui_28.SetScrollY; // IMGUI_API void SetScrollHere(float center_y_ratio = 0.5f); // adjust scrolling amount to make current cursor position visible. center_y_ratio=0.0: top, 0.5: center, 1.0: bottom. When using to make a "default/current item" visible, consider using SetItemDefaultFocus() instead. function SetScrollHere(center_y_ratio = 0.5) { bind.SetScrollHere(center_y_ratio); @@ -1482,8 +1608,8 @@ } exports.GetFont = GetFont; // IMGUI_API float GetFontSize(); // get current font size (= height in pixels) of current font with current scale applied -var bind_imgui_24 = require("./bind-imgui"); -exports.GetFontSize = bind_imgui_24.GetFontSize; +var bind_imgui_29 = require("./bind-imgui"); +exports.GetFontSize = bind_imgui_29.GetFontSize; // IMGUI_API ImVec2 GetFontTexUvWhitePixel(); // get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API function GetFontTexUvWhitePixel(out = new ImVec2()) { return bind.GetFontTexUvWhitePixel(out); @@ -1498,49 +1624,49 @@ exports.GetColorU32 = GetColorU32; // Parameters stacks (current window) // IMGUI_API void PushItemWidth(float item_width); // width of items for the common item+label case, pixels. 0.0f = default to ~2/3 of windows width, >0.0f: width in pixels, <0.0f align xx pixels to the right of window (so -1.0f always align width to the right side) -var bind_imgui_25 = require("./bind-imgui"); -exports.PushItemWidth = bind_imgui_25.PushItemWidth; +var bind_imgui_30 = require("./bind-imgui"); +exports.PushItemWidth = bind_imgui_30.PushItemWidth; // IMGUI_API void PopItemWidth(); -var bind_imgui_26 = require("./bind-imgui"); -exports.PopItemWidth = bind_imgui_26.PopItemWidth; +var bind_imgui_31 = require("./bind-imgui"); +exports.PopItemWidth = bind_imgui_31.PopItemWidth; // IMGUI_API float CalcItemWidth(); // width of item given pushed settings and current cursor position -var bind_imgui_27 = require("./bind-imgui"); -exports.CalcItemWidth = bind_imgui_27.CalcItemWidth; +var bind_imgui_32 = require("./bind-imgui"); +exports.CalcItemWidth = bind_imgui_32.CalcItemWidth; // IMGUI_API void PushTextWrapPos(float wrap_pos_x = 0.0f); // word-wrapping for Text*() commands. < 0.0f: no wrapping; 0.0f: wrap to end of window (or column); > 0.0f: wrap at 'wrap_pos_x' position in window local space function PushTextWrapPos(wrap_pos_x = 0.0) { bind.PushTextWrapPos(wrap_pos_x); } exports.PushTextWrapPos = PushTextWrapPos; // IMGUI_API void PopTextWrapPos(); -var bind_imgui_28 = require("./bind-imgui"); -exports.PopTextWrapPos = bind_imgui_28.PopTextWrapPos; +var bind_imgui_33 = require("./bind-imgui"); +exports.PopTextWrapPos = bind_imgui_33.PopTextWrapPos; // IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus); // allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets -var bind_imgui_29 = require("./bind-imgui"); -exports.PushAllowKeyboardFocus = bind_imgui_29.PushAllowKeyboardFocus; +var bind_imgui_34 = require("./bind-imgui"); +exports.PushAllowKeyboardFocus = bind_imgui_34.PushAllowKeyboardFocus; // IMGUI_API void PopAllowKeyboardFocus(); -var bind_imgui_30 = require("./bind-imgui"); -exports.PopAllowKeyboardFocus = bind_imgui_30.PopAllowKeyboardFocus; +var bind_imgui_35 = require("./bind-imgui"); +exports.PopAllowKeyboardFocus = bind_imgui_35.PopAllowKeyboardFocus; // IMGUI_API void PushButtonRepeat(bool repeat); // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame. -var bind_imgui_31 = require("./bind-imgui"); -exports.PushButtonRepeat = bind_imgui_31.PushButtonRepeat; +var bind_imgui_36 = require("./bind-imgui"); +exports.PushButtonRepeat = bind_imgui_36.PushButtonRepeat; // IMGUI_API void PopButtonRepeat(); -var bind_imgui_32 = require("./bind-imgui"); -exports.PopButtonRepeat = bind_imgui_32.PopButtonRepeat; +var bind_imgui_37 = require("./bind-imgui"); +exports.PopButtonRepeat = bind_imgui_37.PopButtonRepeat; // Cursor / Layout // IMGUI_API void Separator(); // separator, generally horizontal. inside a menu bar or in horizontal layout mode, this becomes a vertical separator. -var bind_imgui_33 = require("./bind-imgui"); -exports.Separator = bind_imgui_33.Separator; +var bind_imgui_38 = require("./bind-imgui"); +exports.Separator = bind_imgui_38.Separator; // IMGUI_API void SameLine(float pos_x = 0.0f, float spacing_w = -1.0f); // call between widgets or groups to layout them horizontally function SameLine(pos_x = 0.0, spacing_w = -1.0) { bind.SameLine(pos_x, spacing_w); } exports.SameLine = SameLine; // IMGUI_API void NewLine(); // undo a SameLine() -var bind_imgui_34 = require("./bind-imgui"); -exports.NewLine = bind_imgui_34.NewLine; +var bind_imgui_39 = require("./bind-imgui"); +exports.NewLine = bind_imgui_39.NewLine; // IMGUI_API void Spacing(); // add vertical spacing -var bind_imgui_35 = require("./bind-imgui"); -exports.Spacing = bind_imgui_35.Spacing; +var bind_imgui_40 = require("./bind-imgui"); +exports.Spacing = bind_imgui_40.Spacing; // IMGUI_API void Dummy(const ImVec2& size); // add a dummy item of given size function Dummy(size) { bind.Dummy(size); } exports.Dummy = Dummy; @@ -1551,29 +1677,29 @@ function Unindent(indent_w = 0.0) { bind.Unindent(indent_w); } exports.Unindent = Unindent; // IMGUI_API void BeginGroup(); // lock horizontal starting position + capture group bounding box into one "item" (so you can use IsItemHovered() or layout primitives such as SameLine() on whole group, etc.) -var bind_imgui_36 = require("./bind-imgui"); -exports.BeginGroup = bind_imgui_36.BeginGroup; +var bind_imgui_41 = require("./bind-imgui"); +exports.BeginGroup = bind_imgui_41.BeginGroup; // IMGUI_API void EndGroup(); -var bind_imgui_37 = require("./bind-imgui"); -exports.EndGroup = bind_imgui_37.EndGroup; +var bind_imgui_42 = require("./bind-imgui"); +exports.EndGroup = bind_imgui_42.EndGroup; // IMGUI_API ImVec2 GetCursorPos(); // cursor position is relative to window position function GetCursorPos(out = new ImVec2()) { return bind.GetCursorPos(out); } exports.GetCursorPos = GetCursorPos; // IMGUI_API float GetCursorPosX(); // " -var bind_imgui_38 = require("./bind-imgui"); -exports.GetCursorPosX = bind_imgui_38.GetCursorPosX; +var bind_imgui_43 = require("./bind-imgui"); +exports.GetCursorPosX = bind_imgui_43.GetCursorPosX; // IMGUI_API float GetCursorPosY(); // " -var bind_imgui_39 = require("./bind-imgui"); -exports.GetCursorPosY = bind_imgui_39.GetCursorPosY; +var bind_imgui_44 = require("./bind-imgui"); +exports.GetCursorPosY = bind_imgui_44.GetCursorPosY; // IMGUI_API void SetCursorPos(const ImVec2& local_pos); // " function SetCursorPos(local_pos) { bind.SetCursorPos(local_pos); } exports.SetCursorPos = SetCursorPos; // IMGUI_API void SetCursorPosX(float x); // " -var bind_imgui_40 = require("./bind-imgui"); -exports.SetCursorPosX = bind_imgui_40.SetCursorPosX; +var bind_imgui_45 = require("./bind-imgui"); +exports.SetCursorPosX = bind_imgui_45.SetCursorPosX; // IMGUI_API void SetCursorPosY(float y); // " -var bind_imgui_41 = require("./bind-imgui"); -exports.SetCursorPosY = bind_imgui_41.SetCursorPosY; +var bind_imgui_46 = require("./bind-imgui"); +exports.SetCursorPosY = bind_imgui_46.SetCursorPosY; // IMGUI_API ImVec2 GetCursorStartPos(); // initial cursor position function GetCursorStartPos(out = new ImVec2()) { return bind.GetCursorStartPos(out); } exports.GetCursorStartPos = GetCursorStartPos; @@ -1584,20 +1710,20 @@ function SetCursorScreenPos(pos) { bind.SetCursorScreenPos(pos); } exports.SetCursorScreenPos = SetCursorScreenPos; // IMGUI_API void AlignTextToFramePadding(); // vertically align/lower upcoming text to FramePadding.y so that it will aligns to upcoming widgets (call if you have text on a line before regular widgets) -var bind_imgui_42 = require("./bind-imgui"); -exports.AlignTextToFramePadding = bind_imgui_42.AlignTextToFramePadding; +var bind_imgui_47 = require("./bind-imgui"); +exports.AlignTextToFramePadding = bind_imgui_47.AlignTextToFramePadding; // IMGUI_API float GetTextLineHeight(); // ~ FontSize -var bind_imgui_43 = require("./bind-imgui"); -exports.GetTextLineHeight = bind_imgui_43.GetTextLineHeight; +var bind_imgui_48 = require("./bind-imgui"); +exports.GetTextLineHeight = bind_imgui_48.GetTextLineHeight; // IMGUI_API float GetTextLineHeightWithSpacing(); // ~ FontSize + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of text) -var bind_imgui_44 = require("./bind-imgui"); -exports.GetTextLineHeightWithSpacing = bind_imgui_44.GetTextLineHeightWithSpacing; +var bind_imgui_49 = require("./bind-imgui"); +exports.GetTextLineHeightWithSpacing = bind_imgui_49.GetTextLineHeightWithSpacing; // IMGUI_API float GetFrameHeight(); // ~ FontSize + style.FramePadding.y * 2 -var bind_imgui_45 = require("./bind-imgui"); -exports.GetFrameHeight = bind_imgui_45.GetFrameHeight; +var bind_imgui_50 = require("./bind-imgui"); +exports.GetFrameHeight = bind_imgui_50.GetFrameHeight; // IMGUI_API float GetFrameHeightWithSpacing(); // ~ FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets) -var bind_imgui_46 = require("./bind-imgui"); -exports.GetFrameHeightWithSpacing = bind_imgui_46.GetFrameHeightWithSpacing; +var bind_imgui_51 = require("./bind-imgui"); +exports.GetFrameHeightWithSpacing = bind_imgui_51.GetFrameHeightWithSpacing; // Columns // You can also use SameLine(pos_x) for simplified columns. The columns API is still work-in-progress and rather lacking. // IMGUI_API void Columns(int count = 1, const char* id = NULL, bool border = true); @@ -1607,30 +1733,30 @@ } exports.Columns = Columns; // IMGUI_API void NextColumn(); // next column, defaults to current row or next row if the current row is finished -var bind_imgui_47 = require("./bind-imgui"); -exports.NextColumn = bind_imgui_47.NextColumn; +var bind_imgui_52 = require("./bind-imgui"); +exports.NextColumn = bind_imgui_52.NextColumn; // IMGUI_API int GetColumnIndex(); // get current column index -var bind_imgui_48 = require("./bind-imgui"); -exports.GetColumnIndex = bind_imgui_48.GetColumnIndex; +var bind_imgui_53 = require("./bind-imgui"); +exports.GetColumnIndex = bind_imgui_53.GetColumnIndex; // IMGUI_API float GetColumnWidth(int column_index = -1); // get column width (in pixels). pass -1 to use current column function GetColumnWidth(column_index = -1) { return bind.GetColumnWidth(column_index); } exports.GetColumnWidth = GetColumnWidth; // IMGUI_API void SetColumnWidth(int column_index, float width); // set column width (in pixels). pass -1 to use current column -var bind_imgui_49 = require("./bind-imgui"); -exports.SetColumnWidth = bind_imgui_49.SetColumnWidth; +var bind_imgui_54 = require("./bind-imgui"); +exports.SetColumnWidth = bind_imgui_54.SetColumnWidth; // IMGUI_API float GetColumnOffset(int column_index = -1); // get position of column line (in pixels, from the left side of the contents region). pass -1 to use current column, otherwise 0..GetColumnsCount() inclusive. column 0 is typically 0.0f function GetColumnOffset(column_index = -1) { return bind.GetColumnOffset(column_index); } exports.GetColumnOffset = GetColumnOffset; // IMGUI_API void SetColumnOffset(int column_index, float offset_x); // set position of column line (in pixels, from the left side of the contents region). pass -1 to use current column -var bind_imgui_50 = require("./bind-imgui"); -exports.SetColumnOffset = bind_imgui_50.SetColumnOffset; +var bind_imgui_55 = require("./bind-imgui"); +exports.SetColumnOffset = bind_imgui_55.SetColumnOffset; // IMGUI_API int GetColumnsCount(); -var bind_imgui_51 = require("./bind-imgui"); -exports.GetColumnsCount = bind_imgui_51.GetColumnsCount; +var bind_imgui_56 = require("./bind-imgui"); +exports.GetColumnsCount = bind_imgui_56.GetColumnsCount; // ID scopes // If you are creating widgets in a loop you most likely want to push a unique identifier (e.g. object pointer, loop index) so ImGui can differentiate them. // You can also use the "##foobar" syntax within widget label to distinguish them from each others. Read "A primer on the use of labels/IDs" in the FAQ for more details. @@ -1638,16 +1764,16 @@ // IMGUI_API void PushID(const char* str_id_begin, const char* str_id_end); // IMGUI_API void PushID(const void* ptr_id); // IMGUI_API void PushID(int int_id); -var bind_imgui_52 = require("./bind-imgui"); -exports.PushID = bind_imgui_52.PushID; +var bind_imgui_57 = require("./bind-imgui"); +exports.PushID = bind_imgui_57.PushID; // IMGUI_API void PopID(); -var bind_imgui_53 = require("./bind-imgui"); -exports.PopID = bind_imgui_53.PopID; +var bind_imgui_58 = require("./bind-imgui"); +exports.PopID = bind_imgui_58.PopID; // IMGUI_API ImGuiID GetID(const char* str_id); // calculate unique ID (hash of whole ID stack + given parameter). e.g. if you want to query into ImGuiStorage yourself // IMGUI_API ImGuiID GetID(const char* str_id_begin, const char* str_id_end); // IMGUI_API ImGuiID GetID(const void* ptr_id); -var bind_imgui_54 = require("./bind-imgui"); -exports.GetID = bind_imgui_54.GetID; +var bind_imgui_59 = require("./bind-imgui"); +exports.GetID = bind_imgui_59.GetID; // Widgets: Text // IMGUI_API void TextUnformatted(const char* text, const char* text_end = NULL); // raw text without formatting. Roughly equivalent to Text("%s", text) but: A) doesn't require null terminated string if 'text_end' is specified, B) it's faster, no memory copy is done, no buffer size limits, recommended for long chunks of text. function TextUnformatted(text) { bind.TextUnformatted(text); } @@ -1679,8 +1805,8 @@ function BulletText(fmt /*, ...args: any[]*/) { bind.BulletText(fmt /*, ...args*/); } exports.BulletText = BulletText; // IMGUI_API void Bullet(); // draw a small circle and keep the cursor on the same line. advance cursor x position by GetTreeNodeToLabelSpacing(), same distance that TreeNode() uses -var bind_imgui_55 = require("./bind-imgui"); -exports.Bullet = bind_imgui_55.Bullet; +var bind_imgui_60 = require("./bind-imgui"); +exports.Bullet = bind_imgui_60.Bullet; // Widgets: Main // IMGUI_API bool Button(const char* label, const ImVec2& size = ImVec2(0,0)); // button function Button(label, size = ImVec2.ZERO) { @@ -1688,8 +1814,8 @@ } exports.Button = Button; // IMGUI_API bool SmallButton(const char* label); // button with FramePadding=(0,0) to easily embed within text -var bind_imgui_56 = require("./bind-imgui"); -exports.SmallButton = bind_imgui_56.SmallButton; +var bind_imgui_61 = require("./bind-imgui"); +exports.SmallButton = bind_imgui_61.SmallButton; // IMGUI_API bool InvisibleButton(const char* str_id, const ImVec2& size); // button behavior without the visuals, useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.) function InvisibleButton(str_id, size) { return bind.InvisibleButton(str_id, size); @@ -1720,7 +1846,15 @@ exports.Checkbox = Checkbox; // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); function CheckboxFlags(label, flags, flags_value) { - return bind.CheckboxFlags(label, flags, flags_value); + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } + else { + const ref_flags = [flags()]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } exports.CheckboxFlags = CheckboxFlags; // IMGUI_API bool RadioButton(const char* label, bool active); @@ -1777,7 +1911,7 @@ } exports.ProgressBar = ProgressBar; // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); function BeginCombo(label, preview_value, flags = 0) { @@ -2276,17 +2410,17 @@ exports.TreeNodeEx = TreeNodeEx; // IMGUI_API void TreePush(const char* str_id); // ~ Indent()+PushId(). Already called by TreeNode() when returning true, but you can call Push/Pop yourself for layout purpose // IMGUI_API void TreePush(const void* ptr_id = NULL); // " -var bind_imgui_57 = require("./bind-imgui"); -exports.TreePush = bind_imgui_57.TreePush; +var bind_imgui_62 = require("./bind-imgui"); +exports.TreePush = bind_imgui_62.TreePush; // IMGUI_API void TreePop(); // ~ Unindent()+PopId() -var bind_imgui_58 = require("./bind-imgui"); -exports.TreePop = bind_imgui_58.TreePop; +var bind_imgui_63 = require("./bind-imgui"); +exports.TreePop = bind_imgui_63.TreePop; // IMGUI_API void TreeAdvanceToLabelPos(); // advance cursor x position by GetTreeNodeToLabelSpacing() -var bind_imgui_59 = require("./bind-imgui"); -exports.TreeAdvanceToLabelPos = bind_imgui_59.TreeAdvanceToLabelPos; +var bind_imgui_64 = require("./bind-imgui"); +exports.TreeAdvanceToLabelPos = bind_imgui_64.TreeAdvanceToLabelPos; // IMGUI_API float GetTreeNodeToLabelSpacing(); // horizontal distance preceding label when using TreeNode*() or Bullet() == (g.FontSize + style.FramePadding.x*2) for a regular unframed TreeNode -var bind_imgui_60 = require("./bind-imgui"); -exports.GetTreeNodeToLabelSpacing = bind_imgui_60.GetTreeNodeToLabelSpacing; +var bind_imgui_65 = require("./bind-imgui"); +exports.GetTreeNodeToLabelSpacing = bind_imgui_65.GetTreeNodeToLabelSpacing; // IMGUI_API void SetNextTreeNodeOpen(bool is_open, ImGuiCond cond = 0); // set next TreeNode/CollapsingHeader open state. function SetNextTreeNodeOpen(is_open, cond = 0) { bind.SetNextTreeNodeOpen(is_open, cond); @@ -2365,30 +2499,30 @@ } exports.SetTooltip = SetTooltip; // IMGUI_API void BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of contents). -var bind_imgui_61 = require("./bind-imgui"); -exports.BeginTooltip = bind_imgui_61.BeginTooltip; +var bind_imgui_66 = require("./bind-imgui"); +exports.BeginTooltip = bind_imgui_66.BeginTooltip; // IMGUI_API void EndTooltip(); -var bind_imgui_62 = require("./bind-imgui"); -exports.EndTooltip = bind_imgui_62.EndTooltip; +var bind_imgui_67 = require("./bind-imgui"); +exports.EndTooltip = bind_imgui_67.EndTooltip; // Menus // IMGUI_API bool BeginMainMenuBar(); // create and append to a full screen menu-bar. only call EndMainMenuBar() if this returns true! -var bind_imgui_63 = require("./bind-imgui"); -exports.BeginMainMenuBar = bind_imgui_63.BeginMainMenuBar; +var bind_imgui_68 = require("./bind-imgui"); +exports.BeginMainMenuBar = bind_imgui_68.BeginMainMenuBar; // IMGUI_API void EndMainMenuBar(); -var bind_imgui_64 = require("./bind-imgui"); -exports.EndMainMenuBar = bind_imgui_64.EndMainMenuBar; +var bind_imgui_69 = require("./bind-imgui"); +exports.EndMainMenuBar = bind_imgui_69.EndMainMenuBar; // IMGUI_API bool BeginMenuBar(); // append to menu-bar of current window (requires ImGuiWindowFlags_MenuBar flag set on parent window). only call EndMenuBar() if this returns true! -var bind_imgui_65 = require("./bind-imgui"); -exports.BeginMenuBar = bind_imgui_65.BeginMenuBar; +var bind_imgui_70 = require("./bind-imgui"); +exports.BeginMenuBar = bind_imgui_70.BeginMenuBar; // IMGUI_API void EndMenuBar(); -var bind_imgui_66 = require("./bind-imgui"); -exports.EndMenuBar = bind_imgui_66.EndMenuBar; +var bind_imgui_71 = require("./bind-imgui"); +exports.EndMenuBar = bind_imgui_71.EndMenuBar; // IMGUI_API bool BeginMenu(const char* label, bool enabled = true); // create a sub-menu entry. only call EndMenu() if this returns true! function BeginMenu(label, enabled = true) { return bind.BeginMenu(label, enabled); } exports.BeginMenu = BeginMenu; // IMGUI_API void EndMenu(); -var bind_imgui_67 = require("./bind-imgui"); -exports.EndMenu = bind_imgui_67.EndMenu; +var bind_imgui_72 = require("./bind-imgui"); +exports.EndMenu = bind_imgui_72.EndMenu; // IMGUI_API bool MenuItem(const char* label, const char* shortcut = NULL, bool selected = false, bool enabled = true); // return true when activated. shortcuts are displayed for convenience but not processed by ImGui at the moment // IMGUI_API bool MenuItem(const char* label, const char* shortcut, bool* p_selected, bool enabled = true); // return true when activated + toggle (*p_selected) if p_selected != NULL function MenuItem(label, shortcut = null, selected = false, enabled = true) { @@ -2412,16 +2546,16 @@ exports.MenuItem = MenuItem; // Popups // IMGUI_API void OpenPopup(const char* str_id); // call to mark popup as open (don't call every frame!). popups are closed when user click outside, or if CloseCurrentPopup() is called within a BeginPopup()/EndPopup() block. By default, Selectable()/MenuItem() are calling CloseCurrentPopup(). Popup identifiers are relative to the current ID-stack (so OpenPopup and BeginPopup needs to be at the same level). -var bind_imgui_68 = require("./bind-imgui"); -exports.OpenPopup = bind_imgui_68.OpenPopup; +var bind_imgui_73 = require("./bind-imgui"); +exports.OpenPopup = bind_imgui_73.OpenPopup; // IMGUI_API bool OpenPopupOnItemClick(const char* str_id = NULL, int mouse_button = 1); // helper to open popup when clicked on last item. return true when just opened. function OpenPopupOnItemClick(str_id = "", mouse_button = 1) { return bind.OpenPopupOnItemClick(str_id, mouse_button); } exports.OpenPopupOnItemClick = OpenPopupOnItemClick; // IMGUI_API bool BeginPopup(const char* str_id); // return true if the popup is open, and you can start outputting to it. only call EndPopup() if BeginPopup() returned true! -var bind_imgui_69 = require("./bind-imgui"); -exports.BeginPopup = bind_imgui_69.BeginPopup; +var bind_imgui_74 = require("./bind-imgui"); +exports.BeginPopup = bind_imgui_74.BeginPopup; // IMGUI_API bool BeginPopupModal(const char* name, bool* p_open = NULL, ImGuiWindowFlags extra_flags = 0); // modal dialog (block interactions behind the modal window, can't close the modal window by clicking outside) function BeginPopupModal(str_id = "", p_open = null, extra_flags = 0) { p_open = p_open || [true]; @@ -2444,14 +2578,14 @@ } exports.BeginPopupContextVoid = BeginPopupContextVoid; // IMGUI_API void EndPopup(); -var bind_imgui_70 = require("./bind-imgui"); -exports.EndPopup = bind_imgui_70.EndPopup; +var bind_imgui_75 = require("./bind-imgui"); +exports.EndPopup = bind_imgui_75.EndPopup; // IMGUI_API bool IsPopupOpen(const char* str_id); // return true if the popup is open -var bind_imgui_71 = require("./bind-imgui"); -exports.IsPopupOpen = bind_imgui_71.IsPopupOpen; +var bind_imgui_76 = require("./bind-imgui"); +exports.IsPopupOpen = bind_imgui_76.IsPopupOpen; // IMGUI_API void CloseCurrentPopup(); // close the popup we have begin-ed into. clicking on a MenuItem or Selectable automatically close the current popup. -var bind_imgui_72 = require("./bind-imgui"); -exports.CloseCurrentPopup = bind_imgui_72.CloseCurrentPopup; +var bind_imgui_77 = require("./bind-imgui"); +exports.CloseCurrentPopup = bind_imgui_77.CloseCurrentPopup; // Logging/Capture: all text output from interface is captured to tty/file/clipboard. By default, tree nodes are automatically opened during logging. // IMGUI_API void LogToTTY(int max_depth = -1); // start logging to tty function LogToTTY(max_depth = -1) { @@ -2469,11 +2603,11 @@ } exports.LogToClipboard = LogToClipboard; // IMGUI_API void LogFinish(); // stop logging (close file, etc.) -var bind_imgui_73 = require("./bind-imgui"); -exports.LogFinish = bind_imgui_73.LogFinish; +var bind_imgui_78 = require("./bind-imgui"); +exports.LogFinish = bind_imgui_78.LogFinish; // IMGUI_API void LogButtons(); // helper to display buttons for logging to tty/file/clipboard -var bind_imgui_74 = require("./bind-imgui"); -exports.LogButtons = bind_imgui_74.LogButtons; +var bind_imgui_79 = require("./bind-imgui"); +exports.LogButtons = bind_imgui_79.LogButtons; // IMGUI_API void LogText(const char* fmt, ...) IM_FMTARGS(1); // pass text data straight to log (without being displayed) function LogText(fmt) { bind.LogText(fmt); @@ -2520,67 +2654,12 @@ bind.PopClipRect(); } exports.PopClipRect = PopClipRect; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -function StyleColorsClassic(dst = null) { - if (dst === null) { - bind.StyleColorsClassic(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsClassic = StyleColorsClassic; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -function StyleColorsDark(dst = null) { - if (dst === null) { - bind.StyleColorsDark(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsDark = StyleColorsDark; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -function StyleColorsLight(dst = null) { - if (dst === null) { - bind.StyleColorsLight(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsLight = StyleColorsLight; // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) // IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window (WIP navigation branch only). Pleaase use instead of SetScrollHere(). -var bind_imgui_75 = require("./bind-imgui"); -exports.SetItemDefaultFocus = bind_imgui_75.SetItemDefaultFocus; +var bind_imgui_80 = require("./bind-imgui"); +exports.SetItemDefaultFocus = bind_imgui_80.SetItemDefaultFocus; // IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget. function SetKeyboardFocusHere(offset = 0) { bind.SetKeyboardFocusHere(offset); @@ -2593,22 +2672,28 @@ } exports.IsItemHovered = IsItemHovered; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) -var bind_imgui_76 = require("./bind-imgui"); -exports.IsItemActive = bind_imgui_76.IsItemActive; +var bind_imgui_81 = require("./bind-imgui"); +exports.IsItemActive = bind_imgui_81.IsItemActive; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +var bind_imgui_82 = require("./bind-imgui"); +exports.IsItemFocused = bind_imgui_82.IsItemFocused; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) function IsItemClicked(mouse_button = 0) { return bind.IsItemClicked(mouse_button); } exports.IsItemClicked = IsItemClicked; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) -var bind_imgui_77 = require("./bind-imgui"); -exports.IsItemVisible = bind_imgui_77.IsItemVisible; +var bind_imgui_83 = require("./bind-imgui"); +exports.IsItemVisible = bind_imgui_83.IsItemVisible; // IMGUI_API bool IsAnyItemHovered(); -var bind_imgui_78 = require("./bind-imgui"); -exports.IsAnyItemHovered = bind_imgui_78.IsAnyItemHovered; +var bind_imgui_84 = require("./bind-imgui"); +exports.IsAnyItemHovered = bind_imgui_84.IsAnyItemHovered; // IMGUI_API bool IsAnyItemActive(); -var bind_imgui_79 = require("./bind-imgui"); -exports.IsAnyItemActive = bind_imgui_79.IsAnyItemActive; +var bind_imgui_85 = require("./bind-imgui"); +exports.IsAnyItemActive = bind_imgui_85.IsAnyItemActive; +// IMGUI_API bool IsAnyItemFocused(); +var bind_imgui_86 = require("./bind-imgui"); +exports.IsAnyItemFocused = bind_imgui_86.IsAnyItemFocused; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space function GetItemRectMin(out = new ImVec2()) { return bind.GetItemRectMin(out); @@ -2625,8 +2710,8 @@ } exports.GetItemRectSize = GetItemRectSize; // IMGUI_API void SetItemAllowOverlap(); // allow last item to be overlapped by a subsequent item. sometimes useful with invisible buttons, selectables, etc. to catch unused area. -var bind_imgui_80 = require("./bind-imgui"); -exports.SetItemAllowOverlap = bind_imgui_80.SetItemAllowOverlap; +var bind_imgui_87 = require("./bind-imgui"); +exports.SetItemAllowOverlap = bind_imgui_87.SetItemAllowOverlap; // IMGUI_API bool IsWindowFocused(ImGuiFocusedFlags flags = 0); // is current window focused? or its root/child, depending on flags. see flags for options. function IsWindowFocused(flags = 0) { return bind.IsWindowFocused(flags); @@ -2637,12 +2722,6 @@ return bind.IsWindowHovered(flags); } exports.IsWindowHovered = IsWindowHovered; -// IMGUI_API bool IsAnyWindowFocused(); -var bind_imgui_81 = require("./bind-imgui"); -exports.IsAnyWindowFocused = bind_imgui_81.IsAnyWindowFocused; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -var bind_imgui_82 = require("./bind-imgui"); -exports.IsAnyWindowHovered = bind_imgui_82.IsAnyWindowHovered; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. function IsRectVisible(size_or_rect_min, rect_max) { @@ -2650,11 +2729,11 @@ } exports.IsRectVisible = IsRectVisible; // IMGUI_API float GetTime(); -var bind_imgui_83 = require("./bind-imgui"); -exports.GetTime = bind_imgui_83.GetTime; +var bind_imgui_88 = require("./bind-imgui"); +exports.GetTime = bind_imgui_88.GetTime; // IMGUI_API int GetFrameCount(); -var bind_imgui_84 = require("./bind-imgui"); -exports.GetFrameCount = bind_imgui_84.GetFrameCount; +var bind_imgui_89 = require("./bind-imgui"); +exports.GetFrameCount = bind_imgui_89.GetFrameCount; // IMGUI_API ImDrawList* GetOverlayDrawList(); // this draw list will be the last rendered one, useful to quickly draw overlays shapes/text function GetOverlayDrawList() { return new ImDrawList(bind.GetOverlayDrawList()); @@ -2666,13 +2745,8 @@ } exports.GetDrawListSharedData = GetDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); -var bind_imgui_85 = require("./bind-imgui"); -exports.GetStyleColorName = bind_imgui_85.GetStyleColorName; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -function CalcItemRectClosestPoint(pos, on_edge = false, outward = +0.0, out = new ImVec2()) { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} -exports.CalcItemRectClosestPoint = CalcItemRectClosestPoint; +var bind_imgui_90 = require("./bind-imgui"); +exports.GetStyleColorName = bind_imgui_90.GetStyleColorName; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); function CalcTextSize(text, text_end = null, hide_text_after_double_hash = false, wrap_width = -1, out = new ImVec2()) { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2689,8 +2763,8 @@ } exports.BeginChildFrame = BeginChildFrame; // IMGUI_API void EndChildFrame(); -var bind_imgui_86 = require("./bind-imgui"); -exports.EndChildFrame = bind_imgui_86.EndChildFrame; +var bind_imgui_91 = require("./bind-imgui"); +exports.EndChildFrame = bind_imgui_91.EndChildFrame; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); function ColorConvertU32ToFloat4(in_, out = new ImVec4()) { return bind.ColorConvertU32ToFloat4(in_, out); @@ -2702,11 +2776,11 @@ } exports.ColorConvertFloat4ToU32 = ColorConvertFloat4ToU32; // IMGUI_API void ColorConvertRGBtoHSV(float r, float g, float b, float& out_h, float& out_s, float& out_v); -var bind_imgui_87 = require("./bind-imgui"); -exports.ColorConvertRGBtoHSV = bind_imgui_87.ColorConvertRGBtoHSV; +var bind_imgui_92 = require("./bind-imgui"); +exports.ColorConvertRGBtoHSV = bind_imgui_92.ColorConvertRGBtoHSV; // IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float& out_r, float& out_g, float& out_b); -var bind_imgui_88 = require("./bind-imgui"); -exports.ColorConvertHSVtoRGB = bind_imgui_88.ColorConvertHSVtoRGB; +var bind_imgui_93 = require("./bind-imgui"); +exports.ColorConvertHSVtoRGB = bind_imgui_93.ColorConvertHSVtoRGB; // Inputs // IMGUI_API int GetKeyIndex(ImGuiKey imgui_key); // map ImGuiKey_* values into user's key index. == io.KeyMap[key] function GetKeyIndex(imgui_key) { @@ -2789,11 +2863,11 @@ } exports.ResetMouseDragDelta = ResetMouseDragDelta; // IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired cursor type, reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you -var bind_imgui_89 = require("./bind-imgui"); -exports.GetMouseCursor = bind_imgui_89.GetMouseCursor; +var bind_imgui_94 = require("./bind-imgui"); +exports.GetMouseCursor = bind_imgui_94.GetMouseCursor; // IMGUI_API void SetMouseCursor(ImGuiMouseCursor type); // set desired cursor type -var bind_imgui_90 = require("./bind-imgui"); -exports.SetMouseCursor = bind_imgui_90.SetMouseCursor; +var bind_imgui_95 = require("./bind-imgui"); +exports.SetMouseCursor = bind_imgui_95.SetMouseCursor; // IMGUI_API void CaptureKeyboardFromApp(bool capture = true); // manually override io.WantCaptureKeyboard flag next frame (said flag is entirely left for your application handle). e.g. force capture keyboard when your widget is being hovered. function CaptureKeyboardFromApp(capture = true) { return bind.CaptureKeyboardFromApp(capture); @@ -2806,40 +2880,15 @@ exports.CaptureMouseFromApp = CaptureMouseFromApp; // Helpers functions to access functions pointers in ImGui::GetIO() // IMGUI_API void* MemAlloc(size_t sz); -var bind_imgui_91 = require("./bind-imgui"); -exports.MemAlloc = bind_imgui_91.MemAlloc; -// IMGUI_API void MemFree(void* ptr); -var bind_imgui_92 = require("./bind-imgui"); -exports.MemFree = bind_imgui_92.MemFree; -// IMGUI_API const char* GetClipboardText(); -var bind_imgui_93 = require("./bind-imgui"); -exports.GetClipboardText = bind_imgui_93.GetClipboardText; -// IMGUI_API void SetClipboardText(const char* text); -var bind_imgui_94 = require("./bind-imgui"); -exports.SetClipboardText = bind_imgui_94.SetClipboardText; -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -var bind_imgui_95 = require("./bind-imgui"); -exports.GetVersion = bind_imgui_95.GetVersion; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -function CreateContext() { - return bind.CreateContext(); -} -exports.CreateContext = CreateContext; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -function DestroyContext(ctx = null) { - return bind.DestroyContext(ctx); -} -exports.DestroyContext = DestroyContext; -// IMGUI_API ImGuiContext* GetCurrentContext(); var bind_imgui_96 = require("./bind-imgui"); -exports.GetCurrentContext = bind_imgui_96.GetCurrentContext; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +exports.MemAlloc = bind_imgui_96.MemAlloc; +// IMGUI_API void MemFree(void* ptr); var bind_imgui_97 = require("./bind-imgui"); -exports.SetCurrentContext = bind_imgui_97.SetCurrentContext; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBMEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file +exports.MemFree = bind_imgui_97.MemFree; +// IMGUI_API const char* GetClipboardText(); +var bind_imgui_98 = require("./bind-imgui"); +exports.GetClipboardText = bind_imgui_98.GetClipboardText; +// IMGUI_API void SetClipboardText(const char* text); +var bind_imgui_99 = require("./bind-imgui"); +exports.SetClipboardText = bind_imgui_99.SetClipboardText; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBNEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file diff --git a/imgui.ts b/imgui.ts index 8661239..cde5a2b 100644 --- a/imgui.ts +++ b/imgui.ts @@ -32,6 +32,8 @@ export { ImGuiHoveredFlags, ImGuiHoveredFlags as HoveredFlags } from "./bind-imgui"; export { ImGuiDragDropFlags, ImGuiDragDropFlags as DragDropFlags } from "./bind-imgui"; export { ImGuiKey, ImGuiKey as Key } from "./bind-imgui"; +export { ImGuiNavInput, ImGuiNavInput as NavInput } from "./bind-imgui"; +export { ImGuiNavFlags, ImGuiNavFlags as NavFlags } from "./bind-imgui"; export { ImGuiCol, ImGuiCol as Col } from "./bind-imgui"; export { ImGuiStyleVar, ImGuiStyleVar as StyleVar } from "./bind-imgui"; export { ImGuiColorEditFlags, ImGuiColorEditFlags as ColorEditFlags } from "./bind-imgui"; @@ -146,7 +148,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -254,7 +256,7 @@ // Filters.resize(0); // TextRange input_range(InputBuf, InputBuf+strlen(InputBuf)); // input_range.split(',', Filters); - + this.CountGrep = 0; // for (int i = 0; i != Filters.Size; i++) // { @@ -296,7 +298,7 @@ // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -354,7 +356,7 @@ // ImGuiID SourceId; // Source item id // ImGuiID SourceParentId; // Source parent id (if available) // int DataFrameCount; // Data timestamp - // char DataType[8 + 1]; // Data type tag (short user-supplied string) + // char DataType[12 + 1]; // Data type tag (short user-supplied string, 12 characters max) // bool Preview; // Set when AcceptDragDropPayload() was called and mouse has been hovering the target item (nb: handle overlapping drag targets) // bool Delivery; // Set when AcceptDragDropPayload() was called and mouse button is released over the target item. @@ -499,12 +501,12 @@ public HasSelection(): boolean { return this.native.HasSelection(); } } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData { - constructor(public native: bind.ImGuiSizeConstraintCallbackData) {} +export class ImGuiSizeCallbackData { + constructor(public native: bind.ImGuiSizeCallbackData) {} delete(): void { if (this.native) { this.native.delete(); delete this.native; } } get UserData(): any { return this.native.UserData; } @@ -624,7 +626,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif @@ -667,7 +669,7 @@ get IdxBuffer(): Uint8Array { return this.native.IdxBuffer; } // ImVector VtxBuffer; // Vertex buffer. get VtxBuffer(): Uint8Array { return this.native.VtxBuffer; } - + // [Internal, used while building lists] // ImDrawListFlags Flags; // Flags, you may poke into these to adjust anti-aliasing settings per-primitive. // const ImDrawListSharedData* _Data; // Pointer to shared draw data (you can use ImGui::GetDrawListSharedData() to get the one from current ImGui context) @@ -681,7 +683,7 @@ // int _ChannelsCurrent; // [Internal] current channel number (0) // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) - + // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -855,6 +857,8 @@ // float U0, V0, U1, V1; // Texture coordinates } +export { ImFontAtlasFlags } from "./bind-imgui"; + // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -879,10 +883,10 @@ // IMGUI_API void ClearInputData(); // Clear the input TTF data (inc sizes, glyph ranges) // IMGUI_API void ClearFonts(); // Clear the ImGui-side font data (glyphs storage, UV coordinates) // IMGUI_API void Clear(); // Clear all - + // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -1021,44 +1025,45 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle implements bind.interface_ImGuiStyle { - Alpha: number = 1.0; // Global alpha applies to everything in ImGui - private WindowPadding: ImVec2 = new ImVec2(8,8); // Padding within a window + Alpha: number = 1.0; + private WindowPadding: ImVec2 = new ImVec2(8,8); getWindowPadding(): bind.interface_ImVec2 { return this.WindowPadding; } - WindowRounding: number = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - WindowBorderSize: number = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private WindowMinSize: ImVec2 = new ImVec2(32,32); // Minimum window size + WindowRounding: number = 7.0; + WindowBorderSize: number = 0.0; + private WindowMinSize: ImVec2 = new ImVec2(32,32); getWindowMinSize(): bind.interface_ImVec2 { return this.WindowMinSize; } - private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. + private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); getWindowTitleAlign(): bind.interface_ImVec2 { return this.WindowTitleAlign; } - ChildRounding: number = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - ChildBorderSize: number = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - PopupRounding: number = 0.0; // Radius of popup window corners rounding. - PopupBorderSize: number = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private FramePadding: ImVec2 = new ImVec2(4,3); // Padding within a framed rectangle (used by most widgets) + ChildRounding: number = 0.0; + ChildBorderSize: number = 1.0; + PopupRounding: number = 0.0; + PopupBorderSize: number = 1.0; + private FramePadding: ImVec2 = new ImVec2(4,3); getFramePadding(): bind.interface_ImVec2 { return this.FramePadding; } - FrameRounding: number = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - FrameBorderSize: number = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private ItemSpacing: ImVec2 = new ImVec2(8,4); // Horizontal and vertical spacing between widgets/lines + FrameRounding: number = 0.0; + FrameBorderSize: number = 0.0; + private ItemSpacing: ImVec2 = new ImVec2(8,4); getItemSpacing(): bind.interface_ImVec2 { return this.ItemSpacing; } - private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); getItemInnerSpacing(): bind.interface_ImVec2 { return this.ItemInnerSpacing; } - private TouchExtraPadding: ImVec2 = new ImVec2(0,0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! + private TouchExtraPadding: ImVec2 = new ImVec2(0,0); getTouchExtraPadding(): bind.interface_ImVec2 { return this.TouchExtraPadding; } - IndentSpacing: number = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - ColumnsMinSpacing: number = 6.0; // Minimum horizontal spacing between two columns - ScrollbarSize: number = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - ScrollbarRounding: number = 9.0; // Radius of grab corners for scrollbar - GrabMinSize: number = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - GrabRounding: number = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. + IndentSpacing: number = 21.0; + ColumnsMinSpacing: number = 6.0; + ScrollbarSize: number = 16.0; + ScrollbarRounding: number = 9.0; + GrabMinSize: number = 10.0; + GrabRounding: number = 0.0; + private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); getButtonTextAlign(): bind.interface_ImVec2 { return this.ButtonTextAlign; } - private DisplayWindowPadding: ImVec2 = new ImVec2(22,22);// Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. + private DisplayWindowPadding: ImVec2 = new ImVec2(22,22); getDisplayWindowPadding(): bind.interface_ImVec2 { return this.DisplayWindowPadding; } - private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4);// If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. + private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4); getDisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.DisplaySafeAreaPadding; } - AntiAliasedLines: boolean = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - AntiAliasedFill: boolean = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - CurveTessellationTol: number = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + MouseCursorScale: number = 1; + AntiAliasedLines: boolean = true; + AntiAliasedFill: boolean = true; + CurveTessellationTol: number = 1.25; private Colors: ImVec4[] = []; getColorsAt(index: number): bind.interface_ImVec4 { return this.Colors[index]; } setColorsAt(index: number, color: Readonly): boolean { this.Colors[index].Copy(color); return true; } @@ -1116,6 +1121,7 @@ get ButtonTextAlign(): bind.interface_ImVec2 { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding(): bind.interface_ImVec2 { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale(): number { return this.internal.MouseCursorScale; } set MouseCursorScale(value: number) { this.internal.MouseCursorScale = value; } get AntiAliasedLines(): boolean { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value: boolean) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill(): boolean { return this.internal.AntiAliasedFill; } set AntiAliasedFill(value: boolean) { this.internal.AntiAliasedFill = value; } get CurveTessellationTol(): number { return this.internal.CurveTessellationTol; } set CurveTessellationTol(value: number) { this.internal.CurveTessellationTol = value; } @@ -1155,6 +1161,7 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; @@ -1187,6 +1194,9 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags(): bind.ImGuiNavFlags { return this.native.NavFlags; } + set NavFlags(value: bind.ImGuiNavFlags) { this.native.NavFlags = value; } // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -1267,6 +1277,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public get MouseWheel(): number { return this.native.MouseWheel; } public set MouseWheel(value: number) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public get MouseWheelH(): number { return this.native.MouseWheelH; } + public set MouseWheelH(value: number) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor(): boolean { return this.native.MouseDrawCursor; } set MouseDrawCursor(value: boolean) { this.native.MouseDrawCursor = value; } // bool KeyCtrl; // Keyboard modifier pressed: Control @@ -1288,7 +1301,17 @@ } }); // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. - + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public NavInputs: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target: number[], key: PropertyKey, value: number): boolean => { + return this.native.setNavInputsAt(Number(key), value); + } + }); + // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] public AddInputCharacter(c: number): void { this.native.AddInputCharacter(c); } @@ -1299,7 +1322,7 @@ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse(): boolean { return this.native.WantCaptureMouse; } set WantCaptureMouse(value: boolean) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. get WantCaptureKeyboard(): boolean { return this.native.WantCaptureKeyboard; } set WantCaptureKeyboard(value: boolean) { this.native.WantCaptureKeyboard = value; } @@ -1307,6 +1330,10 @@ get WantTextInput(): boolean { return this.native.WantTextInput; } set WantTextInput(value: boolean) { this.native.WantTextInput = value; } // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse(): boolean { return this.native.WantMoveMouse; } set WantMoveMouse(value: boolean) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive(): boolean { return this.native.NavActive; } set NavActive(value: boolean) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible(): boolean { return this.native.NavVisible; } set NavVisible(value: boolean) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate(): number { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1322,6 +1349,13 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + public MouseClickedPos: Readonly[] = new Proxy([], { + get: (target: Readonly[], key: PropertyKey): number | Readonly => { + if (key === "length") { return 5; } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1345,10 +1379,34 @@ } }); // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public NavInputsDownDuration: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(shared_font_atlas: ImFontAtlas | null = null): bind.ImGuiContext | null { + return bind.CreateContext(); +} +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { + return bind.DestroyContext(ctx); +} +// IMGUI_API ImGuiContext* GetCurrentContext(); +export { GetCurrentContext } from "./bind-imgui"; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export { SetCurrentContext } from "./bind-imgui"; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): ImGuiIO { return new ImGuiIO(bind.GetIO()); } @@ -1374,8 +1432,6 @@ } // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void { bind.EndFrame(); } -// IMGUI_API void Shutdown(); -export function Shutdown(): void { bind.Shutdown(); } // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1414,6 +1470,55 @@ export function ShowFontSelector(label: string): void { bind.ShowFontSelector(label); } // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void { bind.ShowUserGuide(); } +// IMGUI_API const char* GetVersion(); +export { GetVersion } from "./bind-imgui"; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsClassic(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsDark(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsLight(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1494,8 +1599,8 @@ // IMGUI_API void SetNextWindowSizeConstraints(const ImVec2& size_min, const ImVec2& size_max, ImGuiSizeConstraintCallback custom_callback = NULL, void* custom_callback_data = NULL); // set next window size limits. use -1,-1 on either X/Y axis to preserve the current size. Use callback to apply non-trivial programmatic constraints. export function SetNextWindowSizeConstraints(size_min: Readonly, size_max: Readonly, custom_callback: ImGuiSizeConstraintCallback | null = null, custom_callback_data: any = null): void { if (custom_callback) { - function _custom_callback(data: bind.ImGuiSizeConstraintCallbackData): void { - const _data: ImGuiSizeConstraintCallbackData = new ImGuiSizeConstraintCallbackData(data); + function _custom_callback(data: bind.ImGuiSizeCallbackData): void { + const _data: ImGuiSizeCallbackData = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1514,8 +1619,10 @@ } // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() export { SetNextWindowFocus } from "./bind-imgui"; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +export { SetNextWindowBgAlpha } from "./bind-imgui"; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1793,8 +1900,15 @@ } } // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); -export function CheckboxFlags(label: string, flags: bind.ImScalar, flags_value: number): boolean { - return bind.CheckboxFlags(label, flags, flags_value); +export function CheckboxFlags(label: string, flags: bind.ImAccess | bind.ImScalar, flags_value: number): boolean { + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } else { + const ref_flags: bind.ImScalar = [ flags() ]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } // IMGUI_API bool RadioButton(const char* label, bool active); // IMGUI_API bool RadioButton(const char* label, int* v, int v_button); @@ -1842,7 +1956,7 @@ } // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); export function BeginCombo(label: string, preview_value: string | null, flags: bind.ImGuiComboFlags = 0): boolean { @@ -2473,53 +2587,6 @@ bind.PopClipRect(); } -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsClassic(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsDark(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsLight(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2537,6 +2604,8 @@ } // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export { IsItemActive } from "./bind-imgui"; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export { IsItemFocused } from "./bind-imgui"; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number = 0): boolean { return bind.IsItemClicked(mouse_button); @@ -2547,6 +2616,8 @@ export { IsAnyItemHovered } from "./bind-imgui"; // IMGUI_API bool IsAnyItemActive(); export { IsAnyItemActive } from "./bind-imgui"; +// IMGUI_API bool IsAnyItemFocused(); +export { IsAnyItemFocused } from "./bind-imgui"; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.GetItemRectMin(out); @@ -2569,10 +2640,6 @@ export function IsWindowHovered(flags: bind.ImGuiHoveredFlags = 0): boolean { return bind.IsWindowHovered(flags); } -// IMGUI_API bool IsAnyWindowFocused(); -export { IsAnyWindowFocused } from "./bind-imgui"; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export { IsAnyWindowHovered } from "./bind-imgui"; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean { @@ -2592,10 +2659,6 @@ } // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export { GetStyleColorName } from "./bind-imgui"; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean = false, outward: number = +0.0, out: bind.interface_ImVec2 = new ImVec2()): typeof out { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null = null, hide_text_after_double_hash: boolean = false, wrap_width: number = -1, out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2712,24 +2775,3 @@ export { GetClipboardText } from "./bind-imgui"; // IMGUI_API void SetClipboardText(const char* text); export { SetClipboardText } from "./bind-imgui"; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export { GetVersion } from "./bind-imgui"; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -export function CreateContext(): bind.ImGuiContext | null { - return bind.CreateContext(); -} -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { - return bind.DestroyContext(ctx); -} -// IMGUI_API ImGuiContext* GetCurrentContext(); -export { GetCurrentContext } from "./bind-imgui"; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export { SetCurrentContext } from "./bind-imgui"; diff --git a/imgui_demo.js b/imgui_demo.js index 31a08cd..dc5c8d2 100644 --- a/imgui_demo.js +++ b/imgui_demo.js @@ -1,5 +1,5 @@ "use strict"; -// dear imgui, v1.53 +// dear imgui, v1.60 WIP // (demo code) Object.defineProperty(exports, "__esModule", { value: true }); // Message to the person tempted to delete this file when integrating ImGui into their code base: @@ -107,7 +107,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted(desc); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -183,7 +183,7 @@ } if (show_app_about.value) { ImGui.Begin("About Dear ImGui", (value = show_app_about.value) => show_app_about.value = value, 64 /* AlwaysAutoResize */); - ImGui.Text(`dear imgui, ${ImGui.GetVersion()}`); + ImGui.Text(`Dear ImGui, ${ImGui.GetVersion()}`); ImGui.Separator(); ImGui.Text("By Omar Cornut and all dear imgui contributors."); ImGui.Text("Dear ImGui is licensed under the MIT License, see LICENSE for more information."); @@ -196,6 +196,7 @@ /* static */ const no_resize = STATIC("no_resize", false); /* static */ const no_collapse = STATIC("no_collapse", false); /* static */ const no_close = STATIC("no_close", false); + /* static */ const no_nav = STATIC("no_nav", false); // Demonstrate the various window flags. Typically you would just use the default. let window_flags = 0; if (no_titlebar.value) @@ -210,6 +211,8 @@ window_flags |= 2 /* NoResize */; if (no_collapse.value) window_flags |= 32 /* NoCollapse */; + if (no_nav.value) + window_flags |= 786432 /* NoNav */; if (no_close.value) p_open = null; // Don't pass our bool* to Begin ImGui.SetNextWindowSize(new imgui_6.ImVec2(550, 680), 4 /* FirstUseEver */); @@ -267,6 +270,8 @@ ImGui.SameLine(300); ImGui.Checkbox("No collapse", (value = no_collapse.value) => no_collapse.value = value); ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); + ImGui.SameLine(150); + ImGui.Checkbox("No nav", (value = no_nav.value) => no_nav.value = value); if (ImGui.TreeNode("Style")) { /*ImGui.*/ ShowStyleEditor(); ImGui.TreePop(); @@ -401,8 +406,7 @@ if (ImGui.TreeNode(i.toString(), `Child ${i}`)) { ImGui.Text("blah blah"); ImGui.SameLine(); - if (ImGui.SmallButton("print")) - console.log(`Child ${i} pressed`); + if (ImGui.SmallButton("button")) { } ImGui.TreePop(); } ImGui.TreePop(); @@ -416,7 +420,7 @@ ImGui.Unindent(ImGui.GetTreeNodeToLabelSpacing()); /* static */ const selection_mask = STATIC("selection_mask", (1 << 2)); // Dumb representation of what may be user-side selection state. You may carry selection state inside or outside your objects in whatever format you see fit. let node_clicked = -1; // Temporary storage of what node we have clicked to process selection at the end of the loop. May be a pointer to your own node type, etc. - ImGui.PushStyleVar(14 /* IndentSpacing */, ImGui.GetFontSize() * 3); // Increase spacing to differentiate leaves from expanded contents. + ImGui.PushStyleVar(15 /* IndentSpacing */, ImGui.GetFontSize() * 3); // Increase spacing to differentiate leaves from expanded contents. for (let i = 0; i < 6; i++) { // Disable the default open on single-click behavior and pass in Selected flag according to our selection state. let node_flags = 128 /* OpenOnArrow */ | 64 /* OpenOnDoubleClick */ | ((selection_mask.value & (1 << i)) ? 1 /* Selected */ : 0); @@ -573,22 +577,50 @@ ImGui.SameLine(); } ImGui.NewLine(); - ImGui.Text(`Pressed ${pressed_count} times.`); + ImGui.Text(`Pressed ${pressed_count.value} times.`); ImGui.TreePop(); } if (ImGui.TreeNode("Selectables")) { + // Selectable() has 2 overloads: + // - The one taking "bool selected" as a read-only selection information. When Selectable() has been clicked is returns true and you can alter selection state accordingly. + // - The one taking "bool* p_selected" as a read-write selection information (convenient in some cases) + // The earlier is more flexible, as in real application your selection may be stored in a different manner (in flags within objects, as an external list, etc). if (ImGui.TreeNode("Basic")) { - /* static */ const selected = STATIC("selected#672", [false, true, false, false]); - ImGui.Selectable("1. I am selectable", (value = selected.value[0]) => selected.value[0] = value); - ImGui.Selectable("2. I am selectable", (value = selected.value[1]) => selected.value[1] = value); + /* static */ const selection = STATIC("selection#695", [false, true, false, false, false]); + ImGui.Selectable("1. I am selectable", (value = selection.value[0]) => selection.value[0] = value); + ImGui.Selectable("2. I am selectable", (value = selection.value[1]) => selection.value[1] = value); ImGui.Text("3. I am not selectable"); - ImGui.Selectable("4. I am selectable", (value = selected.value[2]) => selected.value[2] = value); - if (ImGui.Selectable("5. I am double clickable", selected.value[3], 4 /* AllowDoubleClick */)) + ImGui.Selectable("4. I am selectable", (value = selection.value[3]) => selection.value[2] = value); + if (ImGui.Selectable("5. I am double clickable", selection.value[4], 4 /* AllowDoubleClick */)) if (ImGui.IsMouseDoubleClicked(0)) - selected.value[3] = !selected.value[3]; + selection.value[4] = !selection.value[4]; ImGui.TreePop(); } - if (ImGui.TreeNode("Rendering more text into the same block")) { + if (ImGui.TreeNode("Selection State: Single Selection")) { + /* static */ const selected = STATIC("selected#707", -1); + for (let n = 0; n < 5; n++) { + const buf = `Object ${n}`; + if (ImGui.Selectable(buf, selected.value === n)) + selected.value = n; + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Selection State: Multiple Selection")) { + ShowHelpMarker("Hold CTRL and click to select multiple items."); + /* static */ const selection = STATIC("selection#720", [false, false, false, false, false]); + for (let n = 0; n < 5; n++) { + const buf = `Object ${n}`; + if (ImGui.Selectable(buf, selection.value[n])) { + if (!ImGui.GetIO().KeyCtrl) + // memset(selection, 0, sizeof(selection)); + selection.value.fill(false); + selection.value[n] = !selection.value[n]; + } + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Rendering more text into the same line")) { + // Using the Selectable() override that takes "bool* p_selected" parameter and toggle your booleans automatically. /* static */ const selected = STATIC("selected#687", [false, false, false]); ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); @@ -672,7 +704,7 @@ "*/\n\n" + "label:\n" + "\tlock cmpxchg8b eax\n")); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); ImGui.Checkbox("Read-only", (value = read_only.value) => read_only.value = value); ImGui.PopStyleVar(); ImGui.InputTextMultiline("##source", text.value, imgui_3.IM_ARRAYSIZE(text.value), new imgui_6.ImVec2(-1.0, ImGui.GetTextLineHeight() * 16), 1024 /* AllowTabInput */ | (read_only.value ? 16384 /* ReadOnly */ : 0)); @@ -740,18 +772,18 @@ } if (ImGui.TreeNode("Color/Picker Widgets")) { /* static */ const color = STATIC("color#863", new imgui_9.ImColor(114, 144, 154, 200).toImVec4()); - /* static */ const hdr = STATIC("hdr", false); /* static */ const alpha_preview = STATIC("alpha_preview", true); /* static */ const alpha_half_preview = STATIC("alpha_half_preview", false); /* static */ const options_menu = STATIC("options_menu", true); - ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); - ImGui.SameLine(); - ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); + /* static */ const hdr = STATIC("hdr", false); ImGui.Checkbox("With Alpha Preview", (value = alpha_preview.value) => alpha_preview.value = value); ImGui.Checkbox("With Half Alpha Preview", (value = alpha_half_preview.value) => alpha_half_preview.value = value); ImGui.Checkbox("With Options Menu", (value = options_menu.value) => options_menu.value = value); ImGui.SameLine(); ShowHelpMarker("Right-click on the individual color widget to show options."); + ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); + ImGui.SameLine(); + ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); const misc_flags = (hdr.value ? 4096 /* HDR */ : 0) | (alpha_half_preview.value ? 2048 /* AlphaPreviewHalf */ : (alpha_preview.value ? 1024 /* AlphaPreview */ : 0)) | (options_menu.value ? 0 : 8 /* NoOptions */); ImGui.Text("Color widget:"); ImGui.SameLine(); @@ -912,7 +944,7 @@ } if (ImGui.TreeNode("Vertical Sliders")) { const spacing = 4; - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(spacing, spacing)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(spacing, spacing)); /* static */ const int_value = STATIC("int_value", 0); ImGui.VSliderInt("##int", new imgui_6.ImVec2(18, 160), (value = int_value.value) => int_value.value = value, 0, 5); ImGui.SameLine(); @@ -958,7 +990,7 @@ if (i > 0) ImGui.SameLine(); ImGui.PushID(i); - ImGui.PushStyleVar(15 /* GrabMinSize */, 40); + ImGui.PushStyleVar(18 /* GrabMinSize */, 40); ImGui.VSliderFloat("##v", new imgui_6.ImVec2(40, 160), (value = values.value[i]) => values.value[i] = value, 0.0, 1.0, "%.2f\nsec"); ImGui.PopStyleVar(); ImGui.PopID(); @@ -971,36 +1003,49 @@ if (ImGui.CollapsingHeader("Layout")) { if (ImGui.TreeNode("Child regions")) { /* static */ const disable_mouse_wheel = STATIC("disable_mouse_wheel", false); + /* static */ const disable_menu = STATIC("disable_menu", false); ImGui.Checkbox("Disable Mouse Wheel", (value = disable_mouse_wheel.value) => disable_mouse_wheel.value = value); - ImGui.Text("Without border"); + ImGui.Checkbox("Disable Menu", (value = disable_menu.value) => disable_menu.value = value); /* static */ const line = STATIC("line", 50); let goto_line = ImGui.Button("Goto"); ImGui.SameLine(); ImGui.PushItemWidth(100); goto_line = ImGui.InputInt("##Line", (value = line.value) => line.value = value, 0, 0, 32 /* EnterReturnsTrue */) || goto_line; ImGui.PopItemWidth(); - ImGui.BeginChild("Sub1", new imgui_6.ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, 2048 /* HorizontalScrollbar */ | (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); - for (let i = 0; i < 100; i++) { - ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); - if (goto_line && line.value === i) + // Child 1: no border, enable horizontal scrollbar + { + ImGui.BeginChild("Child1", new imgui_6.ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, 2048 /* HorizontalScrollbar */ | (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); + for (let i = 0; i < 100; i++) { + ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); + if (goto_line && line.value === i) + ImGui.SetScrollHere(); + } + if (goto_line && line.value >= 100) ImGui.SetScrollHere(); + ImGui.EndChild(); } - if (goto_line && line.value >= 100) - ImGui.SetScrollHere(); - ImGui.EndChild(); ImGui.SameLine(); - ImGui.PushStyleVar(5 /* ChildRounding */, 5.0); - ImGui.BeginChild("Sub2", new imgui_6.ImVec2(0, 300), true, (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); - ImGui.Text("With border"); - ImGui.Columns(2); - for (let i = 0; i < 100; i++) { - if (i === 50) - ImGui.NextColumn(); - const buf = `${("00000000" + (i * 5731).toString(16)).substr(-8)}`; - ImGui.Button(buf, new imgui_6.ImVec2(-1.0, 0.0)); + // Child 2: rounded border + { + ImGui.PushStyleVar(6 /* ChildRounding */, 5.0); + ImGui.BeginChild("Child2", new imgui_6.ImVec2(0, 300), true, (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0) | (disable_menu ? 0 : 1024 /* MenuBar */)); + if (!disable_menu && ImGui.BeginMenuBar()) { + if (ImGui.BeginMenu("Menu")) { + ShowExampleMenuFile(); + ImGui.EndMenu(); + } + ImGui.EndMenuBar(); + } + ImGui.Columns(2); + for (let i = 0; i < 100; i++) { + if (i === 50) + ImGui.NextColumn(); + const buf = `${("00000000" + (i * 5731).toString(16)).substr(-8)}`; + ImGui.Button(buf, new imgui_6.ImVec2(-1.0, 0.0)); + } + ImGui.EndChild(); + ImGui.PopStyleVar(); } - ImGui.EndChild(); - ImGui.PopStyleVar(); ImGui.TreePop(); } if (ImGui.TreeNode("Widgets Width")) { @@ -1265,8 +1310,8 @@ ImGui.TextWrapped("You may want to explicitly specify content width by calling SetNextWindowContentWidth() before Begin()."); /* static */ const lines = STATIC("lines#1432", 7); ImGui.SliderInt("Lines", (value = lines.value) => lines.value = value, 1, 15); - ImGui.PushStyleVar(10 /* FrameRounding */, 3.0); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(2.0, 1.0)); + ImGui.PushStyleVar(11 /* FrameRounding */, 3.0); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(2.0, 1.0)); ImGui.BeginChild("scrolling", new imgui_6.ImVec2(0, ImGui.GetFrameHeightWithSpacing() * 7 + 30), true, 2048 /* HorizontalScrollbar */); for (let line = 0; line < lines.value; line++) { // Display random stuff (for the sake of this trivial demo we are using basic Button+SameLine. If you want to create your own time line for a real application you may be better off @@ -1425,12 +1470,13 @@ ///* static */ const dummy_i: number = 0; //ImGui.Combo("Combo", &dummy_i, "Delete\0Delete harder\0"); /* static */ const dont_ask_me_next_time = STATIC("dont_ask_me_next_time", false); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); ImGui.Checkbox("Don't ask me next time", (value = dont_ask_me_next_time.value) => dont_ask_me_next_time.value = value); ImGui.PopStyleVar(); if (ImGui.Button("OK", new imgui_6.ImVec2(120, 0))) { ImGui.CloseCurrentPopup(); } + ImGui.SetItemDefaultFocus(); ImGui.SameLine(); if (ImGui.Button("Cancel", new imgui_6.ImVec2(120, 0))) { ImGui.CloseCurrentPopup(); @@ -1448,7 +1494,7 @@ if (ImGui.Button("Add another modal..")) ImGui.OpenPopup("Stacked 2"); if (ImGui.BeginPopupModal("Stacked 2")) { - ImGui.Text("Hello from Stacked The Second"); + ImGui.Text("Hello from Stacked The Second!"); if (ImGui.Button("Close")) ImGui.CloseCurrentPopup(); ImGui.EndPopup(); @@ -1670,16 +1716,22 @@ if (filter.value.PassFilter(lines[i])) ImGui.BulletText(lines[i]); } - if (ImGui.CollapsingHeader("Inputs & Focus")) { + if (ImGui.CollapsingHeader("Inputs, Navigation & Focus")) { const io = ImGui.GetIO(); - ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); - ImGui.SameLine(); - ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); ImGui.Text(`WantCaptureMouse: ${io.WantCaptureMouse}`); ImGui.Text(`WantCaptureKeyboard: ${io.WantCaptureKeyboard}`); ImGui.Text(`WantTextInput: ${io.WantTextInput}`); ImGui.Text(`WantMoveMouse: ${io.WantMoveMouse}`); - if (ImGui.TreeNode("Keyboard & Mouse State")) { + ImGui.Text(`NavActive: ${io.NavActive}, NavVisible: ${io.NavVisible}`); + ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); + ImGui.SameLine(); + ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + ImGui.CheckboxFlags("io.NavFlags: EnableGamepad", (value = io.NavFlags) => io.NavFlags = value, 2 /* EnableGamepad */); + ImGui.CheckboxFlags("io.NavFlags: EnableKeyboard", (value = io.NavFlags) => io.NavFlags = value, 1 /* EnableKeyboard */); + ImGui.CheckboxFlags("io.NavFlags: MoveMouse", (value = io.NavFlags) => io.NavFlags = value, 4 /* MoveMouse */); + ImGui.SameLine(); + ShowHelpMarker("Request ImGui to move your move cursor when using gamepad/keyboard navigation. NewFrame() will change io.MousePos and set the io.WantMoveMouse flag, your backend will need to apply the new mouse position."); + if (ImGui.TreeNode("Keyboard, Mouse & Navigation State")) { if (ImGui.IsMousePosValid()) ImGui.Text(`Mouse pos: (${io.MousePos.x}, ${io.MousePos.x})`); else @@ -1728,6 +1780,24 @@ ImGui.Text(i.toString()); } ImGui.Text(`Keys mods: ${io.KeyCtrl ? "CTRL " : ""}${io.KeyShift ? "SHIFT " : ""}${io.KeyAlt ? "ALT " : ""}${io.KeySuper ? "SUPER " : ""}`); + ImGui.Text("NavInputs down:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputs[i] > 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}] ${io.NavInputs[i].toFixed(2)}`); + } + ImGui.Text("NavInputs pressed:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputsDownDuration[i] == 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}]`); + } + ImGui.Text("NavInputs duration:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputsDownDuration[i] >= 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}] ${io.NavInputsDownDuration[i].toFixed(2)}`); + } ImGui.Button("Hovering me sets the\nkeyboard capture flag"); if (ImGui.IsItemHovered()) ImGui.CaptureKeyboardFromApp(true); @@ -1779,7 +1849,21 @@ ImGui.Text(`Item with focus: ${has_focus}`); else ImGui.Text("Item with focus: "); - ImGui.TextWrapped("Cursor & selection are preserved when refocusing last used item in code."); + // Use >= 0 parameter to SetKeyboardFocusHere() to focus an upcoming item + /* static */ const f3 = STATIC("f3", [0.0, 0.0, 0.0]); + let focus_ahead = -1; + if (ImGui.Button("Focus on X")) + focus_ahead = 0; + ImGui.SameLine(); + if (ImGui.Button("Focus on Y")) + focus_ahead = 1; + ImGui.SameLine(); + if (ImGui.Button("Focus on Z")) + focus_ahead = 2; + if (focus_ahead != -1) + ImGui.SetKeyboardFocusHere(focus_ahead); + ImGui.SliderFloat3("Float3", f3.value, 0.0, 1.0); + ImGui.TextWrapped("NB: Cursor & selection are preserved when refocusing last used item in code."); ImGui.TreePop(); } if (ImGui.TreeNode("Focused & Hovered Test")) { @@ -1791,21 +1875,23 @@ ImGui.BulletText(`IsWindowFocused() = ${ImGui.IsWindowFocused()}\n` + `IsWindowFocused(_ChildWindows) = ${ImGui.IsWindowFocused(1 /* ChildWindows */)}\n` + `IsWindowFocused(_ChildWindows|_RootWindow) = ${ImGui.IsWindowFocused(1 /* ChildWindows */ | 2 /* RootWindow */)}\n` + - `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(2 /* RootWindow */)}\n`); + `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(2 /* RootWindow */)}\n` + + `IsWindowFocused(_AnyWindow) = ${ImGui.IsWindowFocused(4 /* AnyWindow */)}\n`); // Testing IsWindowHovered() function with its various flags (note that the flags can be combined) ImGui.BulletText(`IsWindowHovered() = ${ImGui.IsWindowHovered()}\n` + - `IsWindowHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsWindowHovered(4 /* AllowWhenBlockedByPopup */)}\n` + - `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(16 /* AllowWhenBlockedByActiveItem */)}\n` + + `IsWindowHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsWindowHovered(8 /* AllowWhenBlockedByPopup */)}\n` + + `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(32 /* AllowWhenBlockedByActiveItem */)}\n` + `IsWindowHovered(_ChildWindows) = ${ImGui.IsWindowHovered(1 /* ChildWindows */)}\n` + `IsWindowHovered(_ChildWindows|_RootWindow) = ${ImGui.IsWindowHovered(1 /* ChildWindows */ | 2 /* RootWindow */)}\n` + - `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(2 /* RootWindow */)}\n"`); + `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(2 /* RootWindow */)}\n"` + + `IsWindowHovered(_AnyWindow) = ${ImGui.IsWindowHovered(4 /* AnyWindow */)}\n"`); // Testing IsItemHovered() function (because BulletText is an item itself and that would affect the output of IsItemHovered, we pass all lines in a single items to shorten the code) ImGui.Button("ITEM"); ImGui.BulletText(`IsItemHovered() = ${ImGui.IsItemHovered()}\n` + - `IsItemHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsItemHovered(4 /* AllowWhenBlockedByPopup */)}\n` + - `IsItemHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsItemHovered(16 /* AllowWhenBlockedByActiveItem */)}\n` + - `IsItemHovered(_AllowWhenOverlapped) = ${ImGui.IsItemHovered(32 /* AllowWhenOverlapped */)}\n` + - `IsItemhovered(_RectOnly) = ${ImGui.IsItemHovered(52 /* RectOnly */)}\n`); + `IsItemHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsItemHovered(8 /* AllowWhenBlockedByPopup */)}\n` + + `IsItemHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsItemHovered(32 /* AllowWhenBlockedByActiveItem */)}\n` + + `IsItemHovered(_AllowWhenOverlapped) = ${ImGui.IsItemHovered(64 /* AllowWhenOverlapped */)}\n` + + `IsItemhovered(_RectOnly) = ${ImGui.IsItemHovered(104 /* RectOnly */)}\n`); ImGui.BeginChild("child", new imgui_6.ImVec2(0, 50), true); ImGui.Text("This is another child window for testing IsWindowHovered() flags."); ImGui.EndChild(); @@ -1822,7 +1908,9 @@ // Draw a line between the button and the mouse cursor const draw_list = ImGui.GetWindowDrawList(); draw_list.PushClipRectFullScreen(); - draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[21 /* Button */]), 4.0); + // draw_list->AddLine(io.MouseClickedPos[0], io.MousePos, ImGui::GetColorU32(ImGuiCol_Button), 4.0f); + draw_list.AddLine(io.MouseClickedPos[0], io.MousePos, ImGui.GetColorU32(21 /* Button */), 4.0); + // draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); draw_list.PopClipRect(); // Drag operations gets "unlocked" when the mouse has moved past a certain threshold (the default threshold is stored in io.MouseDragThreshold) // You can request a lower or higher threshold using the second parameter of IsMouseDragging() and GetMouseDragDelta() @@ -1845,7 +1933,7 @@ const label = `Mouse cursor ${i}: ${mouse_cursors_names[i]}`; ImGui.Bullet(); ImGui.Selectable(label, false); - if (ImGui.IsItemHovered()) + if (ImGui.IsItemHovered() || ImGui.IsItemFocused()) ImGui.SetMouseCursor(i); } ImGui.TreePop(); @@ -1857,7 +1945,7 @@ // Demo helper function to select among default colors. See ShowStyleEditor() for more advanced options. // Here we use the simplified Combo() api that packs items into a single literal string. Useful for quick combo boxes where the choices are known locally. function ShowStyleSelector(label) { - /* static */ const style_idx = STATIC("style_idx", 0); + /* static */ const style_idx = STATIC("style_idx", -1); if (ImGui.Combo(label, (value = style_idx.value) => style_idx.value = value, "Classic\0Dark\0Light\0")) { switch (style_idx.value) { case 0: @@ -1890,7 +1978,7 @@ ImGui.SameLine(); ShowHelpMarker("- Load additional fonts with io.Fonts->AddFontFromFileTTF().\n" + "- The font atlas is built when calling io.Fonts->GetTexDataAsXXXX() or io.Fonts->Build().\n" + - "- Read FAQ and documentation in extra_fonts/ for more details.\n" + + "- Read FAQ and documentation in misc/fonts for more details.\n" + "- If you need to add/remove fonts at runtime (e.g. for DPI change), do it before calling NewFrame()."); } exports.ShowFontSelector = ShowFontSelector; @@ -1987,7 +2075,7 @@ else ImGui.LogToTTY(); ImGui.LogText("ImVec4* colors = ImGui.GetStyle().Colors;" + IM_NEWLINE); - for (let i = 0; i < 43 /* COUNT */; i++) { + for (let i = 0; i < 45 /* COUNT */; i++) { const col = style.Colors[i]; const name = ImGui.GetStyleColorName(i); if (!output_only_modified.value || !col.Equals(ref.Colors[i])) @@ -2010,9 +2098,9 @@ ImGui.RadioButton("Alpha", (value = alpha_flags.value) => alpha_flags.value = value, 1024 /* AlphaPreview */); ImGui.SameLine(); ImGui.RadioButton("Both", (value = alpha_flags.value) => alpha_flags.value = value, 2048 /* AlphaPreviewHalf */); - ImGui.BeginChild("#colors", new imgui_6.ImVec2(0, 300), true, 16384 /* AlwaysVerticalScrollbar */ | 32768 /* AlwaysHorizontalScrollbar */); + ImGui.BeginChild("#colors", new imgui_6.ImVec2(0, 300), true, 16384 /* AlwaysVerticalScrollbar */ | 32768 /* AlwaysHorizontalScrollbar */ | 8388608 /* NavFlattened */); ImGui.PushItemWidth(-160); - for (let i = 0; i < 43 /* COUNT */; i++) { + for (let i = 0; i < 45 /* COUNT */; i++) { const name = ImGui.GetStyleColorName(i); if (!filter.value.PassFilter(name)) continue; @@ -2020,7 +2108,7 @@ ImGui.ColorEdit4("##color", style.Colors[i], 512 /* AlphaBar */ | alpha_flags.value); if (!style.Colors[i].Equals(ref.Colors[i])) { // Tips: in a real user application, you may want to merge and use an icon font into the main font, so instead of "Save"/"Revert" you'd use icons. - // Read the FAQ and extra_fonts/README.txt about using icon fonts. It's really easy and super convenient! + // Read the FAQ and misc/fonts/README.txt about using icon fonts. It's really easy and super convenient! ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Save")) ref.Colors[i].Copy(style.Colors[i]); @@ -2057,6 +2145,7 @@ // ImGui.Text("The quick brown fox jumps over the lazy dog"); // ImGui.PopFont(); // ImGui.DragFloat("Font scale", &font->Scale, 0.005f, 0.3f, 2.0f, "%.1f"); // Scale only this font + // ImGui.InputFloat("Font offset", &font->DisplayOffset.y, 1, 1, 0); // ImGui.SameLine(); ShowHelpMarker("Note than the default embedded font is NOT meant to be scaled.\n\nFont are currently rendered into bitmaps at a given size at the time of building the atlas. You may oversample them to get some flexibility with scaling. You can also render at multiple sizes and select which one to use at runtime.\n\n(Glimmer of hope: the atlas system should hopefully be rewritten in the future to make scaling more natural and automatic.)"); // ImGui.Text("Ascent: %f, Descent: %f, Height: %f", font->Ascent, font->Descent, font->Ascent - font->Descent); // ImGui.Text("Fallback character: '%c' (%d)", font->FallbackChar, font->FallbackChar); @@ -2179,14 +2268,16 @@ ImGui.EndMenu(); } if (ImGui.BeginMenu("Colors")) { - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); - for (let i = 0; i < 43 /* COUNT */; i++) { + const sz = ImGui.GetTextLineHeight(); + for (let i = 0; i < 45 /* COUNT */; i++) { const name = ImGui.GetStyleColorName(i); ImGui.ColorButton(name, ImGui.GetStyleColorVec4(i)); + const p = ImGui.GetCursorScreenPos(); + ImGui.GetWindowDrawList().AddRectFilled(p, new imgui_6.ImVec2(p.x + sz, p.y + sz), ImGui.GetColorU32(i)); + ImGui.Dummy(new imgui_6.ImVec2(sz, sz)); ImGui.SameLine(); ImGui.MenuItem(name); } - ImGui.PopStyleVar(); ImGui.EndMenu(); } if (ImGui.BeginMenu("Disabled", false)) { @@ -2277,7 +2368,7 @@ const window_pos = new imgui_6.ImVec2((corner.value & 1) ? ImGui.GetIO().DisplaySize.x - DISTANCE : DISTANCE, (corner.value & 2) ? ImGui.GetIO().DisplaySize.y - DISTANCE : DISTANCE); const window_pos_pivot = new imgui_6.ImVec2((corner.value & 1) ? 1.0 : 0.0, (corner.value & 2) ? 1.0 : 0.0); ImGui.SetNextWindowPos(window_pos, 1 /* Always */, window_pos_pivot); - ImGui.PushStyleColor(2 /* WindowBg */, new imgui_7.ImVec4(0.0, 0.0, 0.0, 0.3)); // Transparent background + ImGui.SetNextWindowBgAlpha(0.3); // Transparent background if (ImGui.Begin("Example: Fixed Overlay", p_open, 1 /* NoTitleBar */ | 2 /* NoResize */ | 64 /* AlwaysAutoResize */ | 4 /* NoMove */ | 256 /* NoSavedSettings */)) { ImGui.Text("Simple overlay\nin the corner of the screen.\n(right-click to change position)"); ImGui.Separator(); @@ -2291,11 +2382,12 @@ corner.value = 2; if (ImGui.MenuItem("Bottom-right", null, corner.value === 3)) corner.value = 3; + if (p_open() && ImGui.MenuItem("Close")) + p_open(false); ImGui.EndPopup(); } ImGui.End(); } - ImGui.PopStyleColor(); } // Demonstrate using "##" and "###" in identifiers to manipulate ID generation. // This apply to regular items as well. Read FAQ section "How can I have multiple widgets with the same label? Can I have widget without a label? (Yes). A primer on the purpose of labels/IDs." for details. @@ -2408,7 +2500,7 @@ if (adding_line.value) { adding_preview = true; points.value.push_back(mouse_pos_in_canvas); - if (!ImGui.GetIO().MouseDown[0]) + if (!ImGui.IsMouseDown(0)) adding_line.value = adding_preview = false; } if (ImGui.IsItemHovered()) { @@ -2519,7 +2611,7 @@ this.ScrollToBottom = true; // /* static */ const t: Static = getStatic("t", 0.0); if (ImGui.GetTime() - t > 0.02) { t = ImGui.GetTime(); this.AddLog(`Spam ${t}`); } ImGui.Separator(); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); /* static */ const filter = STATIC("filter#2763", new imgui_11.ImGuiTextFilter()); filter.value.Draw("Filter (\"incl,-excl\") (\"error\")", 180); ImGui.PopStyleVar(); @@ -2542,16 +2634,16 @@ // A typical application wanting coarse clipping and filtering may want to pre-compute an array of indices that passed the filtering test, recomputing this array when user changes the filter, // and appending newly elements as they are inserted. This is left as a task to the user until we can manage to improve this example code! // If your items are of variable size you may want to implement code similar to what ImGuiListClipper does. Or split your data into fixed height items to allow random-seeking into your list. - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(4, 1)); // Tighten spacing + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(4, 1)); // Tighten spacing if (copy_to_clipboard) ImGui.LogToClipboard(); + const col_default_text = ImGui.GetStyleColorVec4(0 /* Text */); for (let i = 0; i < this.Items.Size; i++) { // const char* item = Items[i]; const item = this.Items.Data[i]; if (!filter.value.PassFilter(item)) continue; - // ImVec4 col = ImVec4(1.0f,1.0f,1.0f,1.0f); // A better implementation may store a type per-item. For the sample let's just parse the text. - let col = new imgui_7.ImVec4(1.0, 1.0, 1.0, 1.0); // A better implementation may store a type per-item. For the sample let's just parse the text. + let col = col_default_text; // if (strstr(item, "[error]")) col = ImColor(1.0f,0.4f,0.4f,1.0f); if (/\[error\]/.test(item)) col = new imgui_7.ImVec4(1.0, 0.4, 0.4, 1.0); @@ -2570,6 +2662,7 @@ ImGui.EndChild(); ImGui.Separator(); // Command-line + let reclaim_focus = false; if (ImGui.InputText("Input", this.InputBuf, imgui_3.IM_ARRAYSIZE(this.InputBuf), 32 /* EnterReturnsTrue */ | 64 /* CallbackCompletion */ | 128 /* CallbackHistory */, ExampleAppConsole.TextEditCallbackStub, this)) { // char* input_end = InputBuf+strlen(InputBuf); // while (input_end > InputBuf && input_end[-1] === ' ') { input_end--; } *input_end = 0; @@ -2579,9 +2672,11 @@ this.ExecCommand(this.InputBuf.buffer); // strcpy(InputBuf, ""); this.InputBuf.buffer = ""; + reclaim_focus = true; } - // Demonstrate keeping auto focus on the input box - if (ImGui.IsItemHovered() || (ImGui.IsWindowFocused(3 /* RootAndChildWindows */) && !ImGui.IsAnyItemActive() && !ImGui.IsMouseClicked(0))) + // Demonstrate keeping focus on the input box + ImGui.SetItemDefaultFocus(); + if (reclaim_focus) ImGui.SetKeyboardFocusHere(-1); // Auto focus previous widget ImGui.End(); } @@ -2841,7 +2936,7 @@ return; } ShowHelpMarker("This example shows how you may implement a property editor using two columns.\nAll objects/fields data are dummies here.\nRemember that in many simple cases, you can use ImGui.SameLine(xxx) to position\nyour cursor horizontally instead of using the Columns() API."); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(2, 2)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(2, 2)); ImGui.Columns(2); ImGui.Separator(); class funcs { @@ -2926,7 +3021,7 @@ case 1: { // Multiple calls to Text(), manually coarsely clipped - demonstrate how to use the ImGuiListClipper helper. - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); const clipper = new imgui_13.ImGuiListClipper(lines.value); while (clipper.Step()) for (let i = clipper.DisplayStart; i < clipper.DisplayEnd; i++) @@ -2937,7 +3032,7 @@ } case 2: // Multiple calls to Text(), not clipped (slow) - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); for (let i = 0; i < lines.value; i++) ImGui.Text(`${i} The quick brown fox jumps over the lazy dog`); ImGui.PopStyleVar(); @@ -2954,4 +3049,4 @@ // export function ShowFontSelector(label: string): void {} // export function ShowStyleEditor(ref: ImGuiStyle | null = null): void {} // #endif -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2RlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9CQUFvQjtBQUNwQixjQUFjOztBQUVkLGlHQUFpRztBQUNqRyxzSUFBc0k7QUFDdEksdUdBQXVHO0FBQ3ZHLGdKQUFnSjtBQUNoSiwwSkFBMEo7QUFDMUosMEZBQTBGO0FBQzFGLHNLQUFzSztBQUN0Syx3SEFBd0g7QUFDeEgsYUFBYTtBQUNiLCtEQUErRDtBQUUvRCxzSkFBc0o7QUFDdEosaUpBQWlKO0FBQ2pKLHNJQUFzSTtBQUN0SSw0SkFBNEo7QUFDNUosa0tBQWtLO0FBRWxLLDZEQUE2RDtBQUM3RCxrQ0FBa0M7QUFDbEMsU0FBUztBQUVULHFCQUFxQjtBQUNyQixrREFBa0Q7QUFDbEQsd0VBQXdFO0FBQ3hFLDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsb0VBQW9FO0FBQ3BFLDBDQUEwQztBQUMxQyxRQUFRO0FBQ1IsMENBQTBDO0FBQzFDLFNBQVM7QUFFVCxpQ0FBaUM7QUFDakMsbUNBQXdDO0FBQ3hDLG1DQUFvQztBQUNwQyxtQ0FBdUM7QUFDdkMsbUNBQXlDO0FBcUJ6QyxtQ0FBbUM7QUFDbkMsbUNBQW1EO0FBQ25ELG1DQUFtRDtBQUNuRCxtQ0FBbUM7QUFDbkMsbUNBQWtDO0FBRWxDLG9DQUFxQztBQUVyQyxvQ0FBMEM7QUFDMUMsb0NBQTBDO0FBQzFDLG9DQUEyQztBQUkzQyxrQkFBa0I7QUFDbEIsa0lBQWtJO0FBQ2xJLDZCQUE2QjtBQUM3QixTQUFTO0FBQ1QsbUJBQW1CO0FBQ25CLCtKQUErSjtBQUMvSixzTUFBc007QUFDdE0sZ0lBQWdJO0FBQ2hJLDhIQUE4SDtBQUM5SCx3VEFBd1Q7QUFDeFQsMkNBQTJDO0FBQzNDLHFJQUFxSTtBQUNySSxTQUFTO0FBQ1QsMEJBQTBCO0FBQzFCLDZIQUE2SDtBQUM3SCw0SUFBNEk7QUFDNUksNkpBQTZKO0FBQzdKLG1JQUFtSTtBQUNuSSxzQkFB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QUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBRSxDQUFDLENBQUM7Z0JBQzlMLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUMzQixDQUFDO29CQUNHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2hCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxFQUFFLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUMvRyxDQUFDO3dCQUNHLElBQUksQ0FBQyxHQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3pDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUss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LEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDcEQsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDMUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDbEQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLElBQUksQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQyw2RUFBNkUsQ0FBQyxDQUFDO1lBQ2hILEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDOUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ2xDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDaEMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDeEQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXJCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQzlDLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLGdGQUFnRixDQUFDLENBQUM7WUFFcEcsT0FBTztZQUNQLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRWpELGlCQUFpQjtZQUNqQixLQUFLLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6RCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRWpELFNBQVM7WUFDVCxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hDLEtBQUssQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7WUFFNUIsU0FBUztZQUNULEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDOUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyRCxLQUFLLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLENBQUM7WUFFM0Msb0RBQW9EO1lBQ3BELEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDekMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDekMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QixLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNoRCxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUVoRCxXQUFXO1lBQ1gsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFrQixNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFDLEVBQUUsR0FBa0IsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBQyxFQUFFLEdBQWtCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUMsRUFBRSxHQUFrQixNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ25MLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0UsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuRixLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9FLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFFL0QsVUFBVTtZQUNWLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBaUIsTUFBTSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQWlCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFpQixNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzlJLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEIsTUFBTSxLQUFLLEdBQWEsQ0FBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUUsQ0FBQztZQUMzRCxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQW1CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxLQUFLLEVBQUUsb0JBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9HLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUMxRixLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUMsR0FBRyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDMUYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUEwQixNQUFNLENBQUMsV0FBVyxFQUFFLENBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQztZQUMxRixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUIsQ0FBQztnQkFDRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDNUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFFLG9CQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDMUcsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNkLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4RSxDQUFDO1lBQ0QsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXJCLFFBQVE7WUFDUixNQUFNLEVBQUUsR0FBcUIsSUFBSSxjQUFNLENBQUMsRUFBRSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9DLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFdEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQzdCLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDhNQUE4TSxDQUFDLENBQUM7WUFDbE8sS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25CLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDcEIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNqQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3RCLEtBQUssQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUNoRCxDQUFDO1lBQ0QsZ0VBQWdFO1lBQ2hFLE1BQU0sSUFBSSxHQUFXLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUM3QyxNQUFNLE1BQU0sR0FBa0IsQ0FBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFFLENBQUM7WUFDOUQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsb0JBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFFN0YsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVqQixLQUFLLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3pDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVqQixLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNsQyxLQUFLLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNuQyxLQUFLLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN4QyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFFdEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FDOUMsQ0FBQztZQUNHLEtBQUssQ0FBQyxXQUFXLENBQUMsc05BQXNOLENBQUMsQ0FBQztZQUUxTyxLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEQsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM3QyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXJCLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM3QyxLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFFOUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDN0MsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVyQixLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDN0MsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVyQixLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUU3QixLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLDRFQUE0RTtZQUM3RyxLQUFLLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUUxQixPQUFPO1lBQ1AsTUFBTSxPQUFPLEdBQVcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUM1RCxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzdCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFBQyxDQUFDLENBQUksa0JBQWtCO1lBRXRJLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQVMsZ0pBQWdKO1lBQ3pMLE1BQU0sU0FBUyxHQUFZLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBRSwrR0FBK0c7WUFDdEssS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3hELEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUFDLENBQUMsQ0FBRyxrQkFBa0I7WUFFckgsU0FBUztZQUNULEtBQUssQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDMUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDN0IsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUVoQyxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUV4RCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FDaEMsQ0FBQztZQUNHLEtBQUssQ0FBQyxXQUFXLENBQUMsNkVBQTZFLENBQUMsQ0FBQztZQUNqRyxZQUFZLENBQUMsTUFBTSxLQUFLLEdBQW9CLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsWUFBWSxDQUFDLE1BQU0sVUFBVSxHQUFtQixNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxFQUFFLFlBQVksR0FBbUIsTUFBTSxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNySSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3RFLEtBQUssQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQztZQUM5SixJQUFJLFNBQVMsR0FBWSxLQUFLLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3ZELEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksU0FBUyxDQUFDO1lBQ2pLLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFFbkMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7Z0JBQ0csRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzVCLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNoRyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxHQUFHLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDekYsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUNWLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ3hGLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsR0FBRyxFQUFFLElBQUksRUFBRSxFQUNyQyxDQUFDO29CQUNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksSUFBSSxLQUFLLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FDN0MsQ0FBQzt3QkFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksZUFBTyxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3dCQUMxRCxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLG9DQUFvQztvQkFDdkUsQ0FBQztvQkFDRCxJQUFJLENBQ0osQ0FBQzt3QkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztvQkFDL0IsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sUUFBUSxHQUFXLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxZQUFZLEdBQVcsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUMxRixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQzNDLENBQUM7WUFDRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFBQyxLQUFLLENBQUMsV0FBVyxDQUFDLG1IQUFtSCxDQUFDLENBQUM7WUFDdkosS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyx5R0FBeUcsQ0FBQyxDQUFDO1lBQzdJLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuRSxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUUsS0FBSyxDQUFDLFlBQVkseUJBQThCLEdBQUcsQ0FBQyxDQUFDO1lBQ3JELEtBQUssQ0FBQyxZQUFZLHVCQUE2QixJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNyRSxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLHlCQUF5QixFQUFFLEdBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksaUNBQXVDLENBQUM7WUFDbkksR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxFQUM3QyxDQUFDO2dCQUNHLHFMQUFxTDtnQkFDckwsa0xBQWtMO2dCQUNsTCxNQUFNLFdBQVcsR0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNwRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFDcEMsQ0FBQztvQkFDRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dCQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDNUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDO29CQUM5QixNQUFNLE9BQU8sR0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNyQyxNQUFNLEtBQUssR0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7b0JBQy9GLE1BQU0sR0FBRyxHQUFXLENBQUMsR0FBQyxJQUFJLENBQUM7b0JBQzNCLEtBQUssQ0FBQyxjQUFjLGtCQUFrQixlQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDbEUsS0FBSyxDQUFDLGNBQWMseUJBQXlCLGVBQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6RSxLQUFLLENBQUMsY0FBYyx3QkFBd0IsZUFBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3hFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksY0FBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDdkUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdkIsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQixDQUFDO1lBQ0wsQ0FBQztZQUNELE1BQU0sUUFBUSxHQUFXLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxZQUFZLEdBQVcsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzFGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JCLElBQUksY0FBYyxHQUFXLEdBQUcsQ0FBQztZQUNqQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUFDLGNBQWMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hILEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUFDLGNBQWMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hILEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsS0FBSyxHQUFHLENBQUMsQ0FDM0IsQ0FBQztnQkFDRyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMseUlBQXlJO2dCQUN4SyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztnQkFDdEQsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDL0IsQ0FBQztZQUNHLFlBQVksQ0FBQyxNQUFNLElBQUksR0FBbUIsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDOUksS0FBSyxDQUFDLFdBQVcsQ0FBQywyUUFBMlEsQ0FBQyxDQUFDO1lBQy9SLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDOUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sR0FBRyxHQUFxQixLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUN6RCxNQUFNLFNBQVMsR0FBcUIsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JHLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLElBQUksS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUFDLENBQUM7WUFDcEosS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBUSxDQUFDLEVBQUUsRUFBQyxFQUFFLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDekgsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUMsR0FBRyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGdCQUFRLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsK0JBQStCLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUMxTixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztJQUNMLENBQUM7SUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUNyRCxDQUFDO1FBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUM3QixDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQywrSEFBK0gsQ0FBQyxDQUFDO1lBRW5KLFlBQVksQ0FBQyxNQUFNLGFBQWEsR0FBbUIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9FLE1BQU0sS0FBSyxHQUFhLENBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBRSxDQUFDO1lBQ2xGLFlBQVksQ0FBQyxNQUFNLE9BQU8sR0FBc0IsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUUsQ0FBQyxDQUFDO1lBRXhHLHlCQUF5QjtZQUN6QixnTEFBZ0w7WUFDaEwsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDekIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMxRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQy9CLENBQUM7Z0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDdkIsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNsQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUN4QyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUMzQixhQUFhLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztnQkFDaEMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCw4QkFBOEI7WUFDOUIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDekIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQy9CLENBQUM7Z0JBQ0csR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUM1QyxDQUFDO29CQUNHLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN6RixDQUFDO2dCQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDaEMsQ0FBQztvQkFDRyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUMzQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3BCLENBQUM7Z0JBRUQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUMzQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3RCLEtBQUssQ0FBQyxVQUFVLENBQUMsNkJBQTZCLENBQUMsQ0FBQztnQkFFcEQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztvQkFDOUIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDckMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUN0QyxDQUFDO29CQUNHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDNUMsQ0FBQzt3QkFDRyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztvQkFDekYsQ0FBQztvQkFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2hDLENBQUM7d0JBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQzt3QkFDM0IsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUNwQixDQUFDO29CQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztnQkFDRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQzdCLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDakMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUNsQyxDQUFDO2dCQUNHLG1CQUFtQixFQUFFLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBRUQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQ3BDLENBQUM7WUFDRyxvR0FBb0c7WUFDcEcsK0NBQStDO1lBQy9DLHVCQUF1QjtZQUN2Qiw0QkFBNEI7WUFDNUIsNklBQTZJO1lBQzdJLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUM7WUFDdkUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FDckQsQ0FBQztnQkFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO2dCQUN2RCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2dCQUN4RCxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzFGLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDckIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTJCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ25HLE1BQU0sR0FBRyxHQUFXLFdBQVcsSUFBSSxXQUFXLENBQUMsQ0FBQyx3REFBd0Q7WUFDeEcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUNsQyxDQUFDO2dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ3pCLEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDaEUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDdEIsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQzlCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBRXZELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUM3QixDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQyw4RkFBOEYsQ0FBQyxDQUFDO1lBRWxILEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ3pCLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSw0QkFBb0MsQ0FBQyxDQUM5RSxDQUFDO2dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsa0ZBQWtGLENBQUMsQ0FBQztnQkFDL0YsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUVsQix5Q0FBeUM7Z0JBQ3pDLDREQUE0RDtnQkFFNUQsWUFBWSxDQUFDLE1BQU0scUJBQXFCLEdBQW9CLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbkcsS0FBSyxDQUFDLFlBQVksdUJBQTZCLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLENBQUMsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN2SCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBRXBCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFBQyxDQUFDO2dCQUN6RSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFBQyxDQUFDO2dCQUM3RSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDakMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNqQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQ3ZDLENBQUM7Z0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxnR0FBZ0csQ0FBQyxDQUFDO2dCQUM3RyxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQW1CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pFLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLGtDQUFrQyxDQUFDLENBQUM7Z0JBQ3JHLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBNkIsTUFBTSxDQUFtQixTQUFTLEVBQUUsQ0FBRSxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUUsQ0FBQyxDQUFDO2dCQUM5RyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxrRUFBa0U7Z0JBRTNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztvQkFDcEMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDakMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUN2QyxDQUFDO29CQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsQ0FBQztvQkFDNUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQzt3QkFDdEIsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7b0JBQzlCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztnQkFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN0QixLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDOUIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsK0JBQStCLENBQUMsQ0FBQyxDQUNwRCxDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQyxrR0FBa0csQ0FBQyxDQUFDO1lBQ3RILEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixtSkFBbUo7WUFDbkosdUtBQXVLO1lBQ3ZLLHNLQUFzSztZQUN0SyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3RDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsQ0FBQyxDQUNwRCxDQUFDO2dCQUNHLG1CQUFtQixFQUFFLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUN0QyxDQUFDO1FBQ0csS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV4QixnQkFBZ0I7UUFDaEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQzlCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFFLG9CQUFvQjtZQUM1RCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7Z0JBQ0csTUFBTSxLQUFLLEdBQVcsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDO2dCQUMvQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUM7Z0JBQzdDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUMzQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLHNCQUFzQjtZQUNyRCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsTUFBTSxLQUFLLEdBQWtCLENBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUUsQ0FBQztZQUN2RCxNQUFNLEtBQUssR0FBa0IsQ0FBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGFBQWEsQ0FBRSxDQUFDO1lBQ3pFLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBbUIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUMxQixDQUFDO2dCQUNHLE1BQU0sS0FBSyxHQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN6RCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxLQUFLLENBQUMseUJBQXNDLENBQUM7b0JBQ25GLFFBQVEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QixNQUFNLE9BQU8sR0FBWSxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQy9DLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3pDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN6QyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDakQsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsdUVBQXVFO1FBQ3ZFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FDbEMsQ0FBQztZQUNHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUVsQixLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBRW5CLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QixZQUFZLENBQUMsTUFBTSxHQUFHLEdBQW1CLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RSxLQUFLLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBRW5CLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM1QixZQUFZLENBQUMsTUFBTSxHQUFHLEdBQW1CLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFbkIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQy9GLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMvRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0YsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxnQkFBZ0I7UUFDaEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNwQyxDQUFDO1lBQ0csS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxXQUFXLENBQUMsOENBQThDLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ2hDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNuQixLQUFLLENBQUMsV0FBVyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNqQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDOUIsQ0FBQztZQUNHLG9FQUFvRTtZQUNwRSxZQUFZLENBQUMsTUFBTSxTQUFTLEdBQW9CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDMUUsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUFvQixNQUFNLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzFFLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbkYsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDakYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzVCLENBQUM7Z0JBQ0csRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUNoRCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3RCLDZDQUE2QztnQkFDN0MsTUFBTSxDQUFDLEdBQVcsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUM3RCxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkcsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQ2hCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELG9CQUFvQjtRQUNwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7VUF1QkU7UUFFRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FDM0MsQ0FBQztZQUNHLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN4RCxLQUFLLENBQUMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxpQ0FBdUMsQ0FBQztZQUM1SCxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2xCLE1BQU0sV0FBVyxHQUFXLElBQUksQ0FBQztZQUNqQyxNQUFNLE9BQU8sR0FBcUIsSUFBSSx5QkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFFLG9EQUFvRDtZQUMxSCxPQUFPLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFDckIsQ0FBQztnQkFDRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRTtvQkFDMUQsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7d0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUN2QyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ3ZCLENBQUM7WUFDVCxDQUFDO1lBQ0QscURBQXFEO1lBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQVksS0FBSyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3JFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUFDLGNBQWMsQ0FBQywyRkFBMkYsQ0FBQyxDQUFDO1FBQzlILEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUNkLENBQUM7WUFDRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUMvQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2pHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUNELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQ3hDLENBQUM7UUFDRyxZQUFZLENBQUMsTUFBTSxNQUFNLEdBQTRCLE1BQU0sQ0FBQyxhQUFhLEVBQUUsSUFBSSx3QkFBZSxDQUFDLENBQUM7UUFDaEcsS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUI7Y0FDZCxvQ0FBb0M7Y0FDcEMsbURBQW1EO2NBQ25ELDhEQUE4RDtjQUM5RCw4Q0FBOEMsQ0FBQyxDQUFDO1FBQzlELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEIsTUFBTSxLQUFLLEdBQWEsQ0FBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsY0FBYyxDQUFFLENBQUM7UUFDdEgsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUN4QyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FDN0MsQ0FBQztRQUNHLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNsQyxLQUFLLENBQUMsUUFBUSxDQUFDLG9CQUFvQixFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDakcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQUMsY0FBYyxDQUFDLG9XQUFvVyxDQUFDLENBQUM7UUFFdlksS0FBSyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUN2RCxLQUFLLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBQzdELEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRWpELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUM3QyxDQUFDO1lBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUN4QixLQUFLLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xFLElBQUk7Z0JBQ0EsS0FBSyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUcsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ2pOLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBVSxDQUFDO29CQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3BLLEtBQUssQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUFDLENBQUM7WUFDcEssS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFTLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUFDLENBQUM7WUFDcEssS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRXZELEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUssQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQy9NLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWEsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3pLLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVksQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3pLLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxD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QUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzNILFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQXlCLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzdJLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksZ0JBQXlCLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzlJLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxrQ0FBb0QsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztZQUM3SyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxF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QUFFLENBQUMsQ0FDckQsQ0FBQztnQkFDRyxXQUFXLENBQUMsS0FBSyxHQUFHLGNBQWMsR0FBRyxLQUFLLENBQUM7Z0JBQzNDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3hCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7UUFDRCxTQUFTLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLGNBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsR0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSx1REFBdUQ7UUFDMUssR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7WUFDN0MsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLGNBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2RlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHdCQUF3QjtBQUN4QixjQUFjOztBQUVkLGlHQUFpRztBQUNqRyxzSUFBc0k7QUFDdEksdUdBQXVHO0FBQ3ZHLGdKQUFnSjtBQUNoSiwwSkFBMEo7QUFDMUosMEZBQTBGO0FBQzFGLHNLQUFzSztBQUN0Syx3SEFBd0g7QUFDeEgsYUFBYTtBQUNiLCtEQUErRDtBQUUvRCxzSkFBc0o7QUFDdEosaUpBQWlKO0FBQ2pKLHNJQUFzSTtBQUN0SSw0SkFBNEo7QUFDNUosa0tBQWtLO0FBRWxLLDZEQUE2RDtBQUM3RCxrQ0FBa0M7QUFDbEMsU0FBUztBQUVULHFCQUFxQjtBQUNyQixrREFBa0Q7QUFDbEQsd0VBQXdFO0FBQ3hFLDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsb0VBQW9FO0FBQ3BFLDBDQUEwQztBQUMxQyxRQUFRO0FBQ1IsMENBQTBDO0FBQzFDLFNBQVM7QUFFVCxpQ0FBaUM7QUFDakMsbUNBQXdDO0FBQ3hDLG1DQUFvQztBQUNwQyxtQ0FBdUM7QUFDdkMsbUNBQXlDO0FBcUJ6QyxtQ0FBbUM7QUFDbkMsbUNBQW1EO0FBQ25ELG1DQUFtRDtBQUNuRCxtQ0FBbUM7QUFDbkMsbUNBQWtDO0FBRWxDLG9DQUFxQztBQUVyQyxvQ0FBMEM7QUFDMUMsb0NBQTBDO0FBQzFDLG9DQUEyQztBQUkzQyxrQkFBa0I7QUFDbEIsa0lBQWtJO0FBQ2xJLDZCQUE2QjtBQUM3QixTQUFTO0FBQ1QsbUJBQW1CO0FBQ25CLCtKQUErSjtBQUMvSixzTUFBc007QUFDdE0sZ0lBQWdJO0FBQ2hJLDhIQUE4SDtBQUM5SCx3VEFBd1Q7QUFDeFQsMkNBQTJDO0FBQzNDLHFJQUFxSTtBQUNySSxTQUFTO0FBQ1QsMEJBQTBCO0FBQzFCLDZIQUE2SDtBQUM3SCw0SUFBNEk7QUFDNUksNkpBQTZKO0FBQzdKLG1JQUFtSTtBQUNuSSxzQkFBc0I7QUFDdEIsd0tBQXdLO0FBQ3hLLFNBQVM7QUFDVCxTQUFTO0FBRVQsdUdBQXVHO0FBQ3ZHLGdCQUFnQjtBQUNoQiw0QkFBNEI7QUFDNUIsUUFBUTtBQUNSLDBCQUEwQjtBQUMxQixTQUFTO0FBQ1QsTUFBTSxVQUFVLEdBQVcsSUFBSSxDQUFDO0FBRWhDLDZEQUE2RDtBQUM3RCxnQkFBZ0IsRUFBVSxFQUFFLEVBQVUsSUFBWSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFeEYsK0VBQStFO0FBQy9FLFlBQVk7QUFDWiwrRUFBK0U7QUFFL0UsMEtBQTBLO0FBQzFLLHFDQUFxQztBQUNyQyxTQUFTO0FBRVQsMkNBQTJDO0FBRTNDO0lBQ0ksWUFBbUIsS0FBUTtRQUFSLFVBQUssR0FBTCxLQUFLLENBQUc7SUFBRyxDQUFDO0NBQ2xDO0FBRUQsTUFBTSxPQUFPLEdBQWlDLEVBQUUsQ0FBQztBQUVqRCxnQkFBbUIsR0FBVyxFQUFFLEtBQVE7SUFDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLE1BQU0sQ0FBSSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxtREFBbUQ7QUFDbkQsK0NBQStDO0FBQy9DLGtEQUFrRDtBQUNsRCwwREFBMEQ7QUFDMUQsb0RBQW9EO0FBQ3BELHNEQUFzRDtBQUN0RCw2REFBNkQ7QUFDN0Qsd0RBQXdEO0FBQ3hELHdEQUF3RDtBQUN4RCwyREFBMkQ7QUFDM0QsMkNBQTJDO0FBQzNDLHFDQUFxQztBQUVyQyx3QkFBd0IsSUFBWTtJQUVoQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUMxQixDQUFDO1FBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JCLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2xELEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2QixDQUFDO0FBQ0wsQ0FBQztBQUVEO0lBRUksS0FBSyxDQUFDLFVBQVUsQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO0lBQ2xFLEtBQUssQ0FBQyxVQUFVLENBQUMsMkdBQTJHLENBQUMsQ0FBQztJQUM5SCxLQUFLLENBQUMsVUFBVSxDQUFDLG1EQUFtRCxDQUFDLENBQUM7SUFDdEUsS0FBSyxDQUFDLFVBQVUsQ0FBQywwREFBMEQsQ0FBQyxDQUFDO0lBQzdFLEtBQUssQ0FBQyxVQUFVLENBQUMsNERBQTRELENBQUMsQ0FBQztJQUMvRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDbkMsS0FBSyxDQUFDLFVBQVUsQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO0lBQ2xFLEtBQUssQ0FBQyxVQUFVLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUMzQyxLQUFLLENBQUMsVUFBVSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2YsS0FBSyxDQUFDLFVBQVUsQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO0lBQzVELEtBQUssQ0FBQyxVQUFVLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNsRCxLQUFLLENBQUMsVUFBVSxDQUFDLHVDQUF1QyxDQUFDLENBQUM7SUFDMUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0lBQzNELEtBQUssQ0FBQyxVQUFVLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUNoRCxLQUFLLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdEMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxvRkFBb0YsQ0FBQyxDQUFDO0lBQ3ZHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNyQixDQUFDO0FBcEJELHNDQW9CQztBQUVELGtEQUFrRDtBQUNsRCx3QkFBK0IsU0FBdUQsSUFBSTtJQUV0RixnQkFBZ0I7SUFDaEIsWUFBWSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRyxZQUFZLENBQUMsTUFBTSxnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pGLFlBQVksQ0FBQyxNQUFNLFlBQVksR0FBb0IsTUFBTSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRixZQUFZLENBQUMsTUFBTSxlQUFlLEdBQW9CLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RixZQUFZLENBQUMsTUFBTSx3QkFBd0IsR0FBb0IsTUFBTSxDQUFDLDBCQUEwQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pHLFlBQVksQ0FBQyxNQUFNLGtCQUFrQixHQUFvQixNQUFNLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0YsWUFBWSxDQUFDLE1BQU0sb0JBQW9CLEdBQW9CLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRyxZQUFZLENBQUMsTUFBTSwyQkFBMkIsR0FBb0IsTUFBTSxDQUFDLDZCQUE2QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9HLFlBQVksQ0FBQyxNQUFNLHNCQUFzQixHQUFvQixNQUFNLENBQUMsd0JBQXdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckcsWUFBWSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRyxZQUFZLENBQUMsTUFBTSx5QkFBeUIsR0FBb0IsTUFBTSxDQUFDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNHLFlBQVksQ0FBQyxNQUFNLHFCQUFxQixHQUFvQixNQUFNLENBQUMsdUJBQXVCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFbkcsWUFBWSxDQUFDLE1BQU0sZ0JBQWdCLEdBQW9CLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN6RixZQUFZLENBQUMsTUFBTSxjQUFjLEdBQW9CLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVyRixFQUFFLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUM7UUFBTyx5QkFBeUIsRUFBRSxDQUFDO0lBQ3BFLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztRQUFhLHFCQUFxQixDQUFDLENBQUMsS0FBSyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ2xJLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFBaUIsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUN0SCxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDO1FBQWMsb0JBQW9CLENBQUMsQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUMvSCxFQUFFLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUM7UUFBSyw0QkFBNEIsQ0FBQyxDQUFDLEtBQUssR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUN6SixFQUFFLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7UUFBVyxzQkFBc0IsQ0FBQyxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUN2SSxFQUFFLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUM7UUFBUyx3QkFBd0IsQ0FBQyxDQUFDLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUM3SSxFQUFFLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxLQUFLLENBQUM7UUFBRSwrQkFBK0IsQ0FBQyxDQUFDLEtBQUssR0FBRywyQkFBMkIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLDJCQUEyQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUNsSyxFQUFFLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUM7UUFBTywwQkFBMEIsQ0FBQyxDQUFDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUNuSixFQUFFLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUM7UUFBTywwQkFBMEIsQ0FBQyxDQUFDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUNuSixFQUFFLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUM7UUFBSSw2QkFBNkIsQ0FBQyxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHlCQUF5QixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUU1SixFQUFFLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBYSxDQUFDO1FBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsS0FBSyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQUMsQ0FBQztJQUN4SSxFQUFFLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBUSxDQUFDO1FBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEdBQUcscUJBQXFCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxVQUFVO1FBQUEsZUFBZSxFQUFFLENBQUM7UUFBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7SUFBQyxDQUFDO0lBQ2hNLEVBQUUsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FDekIsQ0FBQztRQUNHLEtBQUssQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxLQUFLLDRCQUFxQyxDQUFDO1FBQ3BJLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxLQUFLLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQixLQUFLLENBQUMsSUFBSSxDQUFDLGlEQUFpRCxDQUFDLENBQUM7UUFDOUQsS0FBSyxDQUFDLElBQUksQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO1FBQzlGLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQU0sV0FBVyxHQUFvQixNQUFNLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9FLFlBQVksQ0FBQyxNQUFNLFlBQVksR0FBb0IsTUFBTSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRixZQUFZLENBQUMsTUFBTSxPQUFPLEdBQW9CLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkUsWUFBWSxDQUFDLE1BQU0sT0FBTyxHQUFvQixNQUFNLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZFLFlBQVksQ0FBQyxNQUFNLFNBQVMsR0FBb0IsTUFBTSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzRSxZQUFZLENBQUMsTUFBTSxXQUFXLEdBQW9CLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0UsWUFBWSxDQUFDLE1BQU0sUUFBUSxHQUFvQixNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pFLFlBQVksQ0FBQyxNQUFNLE1BQU0sR0FBb0IsTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVyRSxrRkFBa0Y7SUFDbEYsSUFBSSxZQUFZLEdBQXNCLENBQUMsQ0FBQztJQUN4QyxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQUUsWUFBWSxzQkFBK0IsQ0FBQztJQUNwRSxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQUMsWUFBWSx1QkFBZ0MsQ0FBQztJQUNyRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFBSyxZQUFZLHNCQUE0QixDQUFDO0lBQ2pFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFBTSxZQUFZLGtCQUEyQixDQUFDO0lBQ2hFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFBSSxZQUFZLG9CQUE2QixDQUFDO0lBQ2xFLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7UUFBRSxZQUFZLHVCQUErQixDQUFDO0lBQ3BFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFBTyxZQUFZLHNCQUEwQixDQUFDO0lBQy9ELEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7UUFBSyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUMsZ0NBQWdDO0lBRXZFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLHVCQUF5QixDQUFDO0lBQ3JFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQ3JELENBQUM7UUFDRyw0REFBNEQ7UUFDNUQsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1osTUFBTSxDQUFDO0lBQ1gsQ0FBQztJQUVELDBHQUEwRztJQUMxRyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBaUMsMENBQTBDO0lBRXJHLEtBQUssQ0FBQyxJQUFJLENBQUMsMkJBQTJCLHFCQUFhLEdBQUcsQ0FBQyxDQUFDO0lBRXhELE9BQU87SUFDUCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FDekIsQ0FBQztRQUNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDNUIsQ0FBQztZQUNHLG1CQUFtQixFQUFFLENBQUM7WUFDdEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2hDLENBQUM7WUFDRyxLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsc0JBQXNCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDdEgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3BHLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3hGLEtBQUssQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3hHLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLHdCQUF3QixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQzVILEtBQUssQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLGtCQUFrQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ2xILEtBQUssQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3pILEtBQUssQ0FBQyxRQUFRLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLDJCQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsMkJBQTJCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQzlJLEtBQUssQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3ZILEtBQUssQ0FBQyxRQUFRLENBQUMsNEJBQTRCLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ25JLEtBQUssQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLHlCQUF5QixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMseUJBQXlCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQy9ILEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3BHLEtBQUssQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNuSCxLQUFLLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3pHLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBQ0QsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDaEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQ25DLENBQUM7UUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDZIQUE2SCxDQUFDLENBQUM7UUFDakosS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMxQixVQUFVLENBQUEsYUFBYSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQzdDLENBQUM7UUFDRyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3RyxLQUFLLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoSCxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQzVFLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pHLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDeEYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUV6RSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7WUFDRyxVQUFVLENBQUEsZUFBZSxFQUFFLENBQUM7WUFDNUIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FDdEMsQ0FBQztZQUNHLEtBQUssQ0FBQyxXQUFXLENBQUMsNE9BQTRPLENBQUMsQ0FBQztZQUNoUSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbkIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDTCxDQUFDO0lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQ3RDLENBQUM7UUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7WUFDRyxZQUFZLENBQUMsTUFBTSxPQUFPLEdBQW1CLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbEUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdkIsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQ3RCLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNqQixLQUFLLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7WUFDMUMsQ0FBQztZQUVELFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBb0IsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBRXpFLFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBbUIsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN0RCxLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4RixLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4RixLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUV0RSwwR0FBMEc7WUFDMUcsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7Z0JBQ0csRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzVCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hCLEtBQUssQ0FBQyxjQUFjLGtCQUFrQixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BFLEtBQUssQ0FBQyxjQUFjLHlCQUF5QixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzNFLEtBQUssQ0FBQyxjQUFjLHdCQUF3QixlQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzFFLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZCLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQixDQUFDO1lBRUQsS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUM1QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUV2QyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FDMUIsQ0FBQztnQkFDRyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3JCLEtBQUssQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztnQkFDbkMsWUFBWSxDQUFDLE1BQU0sR0FBRyxHQUFxQixNQUFNLENBQUMsTUFBTSxFQUFFLENBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFFLENBQUMsQ0FBQztnQkFDbEcsb0RBQW9EO2dCQUNwRCxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ25FLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixDQUFDO1lBRUQsc0NBQXNDO1lBQ3RDLGtDQUFrQztZQUNsQyw2QkFBNkI7WUFDN0IsZUFBZTtZQUNmLDBEQUEwRDtZQUUxRCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFbEIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFFbEMsQ0FBQztnQkFDRyxvRkFBb0Y7Z0JBQ3BGLFlBQVksQ0FBQyxNQUFNLGNBQWMsR0FBbUIsTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoRixLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxrQ0FBa0MsQ0FBQyxDQUFDO2dCQUN6SCw4TkFBOE47Z0JBRTlOLDRGQUE0RjtnQkFDNUYsTUFBTSxLQUFLLEdBQWEsQ0FBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBRSxDQUFDO2dCQUN0TCxZQUFZLENBQUMsTUFBTSxjQUFjLEdBQTBCLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDMUYsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQ3RELENBQUM7b0JBQ0csR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUM1QyxDQUFDO3dCQUNHLE1BQU0sV0FBVyxHQUFZLENBQUMsY0FBYyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdGQUFnRjt3QkFDbEosRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7NEJBQ3hDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUNwQyxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUM7NEJBQ1osS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBRywrSEFBK0g7b0JBQ3RLLENBQUM7b0JBQ0QsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNyQixDQUFDO1lBQ0wsQ0FBQztZQUVELENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUEyQixNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksc0JBQWMsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztnQkFDM0csWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUMxRCxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2hFLEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDcEUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUFDLGNBQWMsQ0FBQywyQ0FBMkMsR0FBRyxpQ0FBaUMsR0FBRyx5Q0FBeUMsR0FBRyxtQ0FBbUMsR0FBRyw0QkFBNEIsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDO2dCQUUzUCxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNwRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQUMsY0FBYyxDQUFDLDRJQUE0SSxDQUFDLENBQUM7Z0JBRS9LLEtBQUssQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFFbkYsWUFBWSxDQUFDLE1BQU0sS0FBSyxHQUE2QixNQUFNLENBQW1CLE9BQU8sRUFBRSxDQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBRSxDQUFDLENBQUM7Z0JBQ25ILEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuRCxDQUFDO1lBRUQsQ0FBQztnQkFDRyxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDckUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUFDLGNBQWMsQ0FBQyxtSEFBbUgsQ0FBQyxDQUFDO2dCQUV0SixLQUFLLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUU5RixZQUFZLENBQUMsTUFBTSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUM5RyxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDN0UsS0FBSyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUM5RyxDQUFDO1lBRUQsQ0FBQztnQkFDRyxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzVELEtBQUssQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM3RSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQUMsY0FBYyxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBRS9ELFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBbUIsTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzVHLEtBQUssQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQUM7Z0JBQ3BHLEtBQUssQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDeEcsWUFBWSxDQUFDLE1BQU0sS0FBSyxHQUFtQixNQUFNLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3BGLENBQUM7WUFFRCxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTZCLE1BQU0sQ0FBbUIsTUFBTSxFQUFFLENBQUUsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUUsQ0FBQyxDQUFDO1lBQ3RHLFlBQVksQ0FBQyxNQUFNLElBQUksR0FBNkIsTUFBTSxDQUFtQixNQUFNLEVBQUUsQ0FBRSxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUUsQ0FBQyxDQUFDO1lBQzFHLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFBQyxjQUFjLENBQUMsK0pBQStKLENBQUMsQ0FBQztZQUVsTSxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFeEMsTUFBTSxhQUFhLEdBQWEsQ0FBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLFlBQVksQ0FBRSxDQUFDO1lBQ3BJLFlBQVksQ0FBQyxNQUFNLG9CQUFvQixHQUFtQixNQUFNLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUYsS0FBSyxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxDQUFDLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsYUFBYSxFQUFFLG9CQUFZLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFFckssWUFBWSxDQUFDLE1BQU0scUJBQXFCLEdBQW1CLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RixLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEdBQUcscUJBQXFCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLGFBQWEsRUFBRSxvQkFBWSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3pKLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDNUIsQ0FBQztZQUNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FDbEMsQ0FBQztnQkFDRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ3RCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUMvQyxDQUFDO3dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7d0JBQ3hCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDakIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDO3dCQUNuQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ3BCLENBQUM7Z0JBQ0wsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGlDQUFpQyxDQUFDLENBQUMsQ0FDdEQsQ0FBQztnQkFDRyxjQUFjLENBQUMsOElBQThJLENBQUMsQ0FBQztnQkFDL0osWUFBWSxDQUFDLE1BQU0sbUNBQW1DLEdBQW9CLE1BQU0sQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDL0gsS0FBSyxDQUFDLFFBQVEsQ0FBQyxzQ0FBc0MsRUFBRSxDQUFDLEtBQUssR0FBRyxtQ0FBbUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG1DQUFtQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDakssS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDckIsRUFBRSxDQUFDLENBQUMsbUNBQW1DLENBQUMsS0FBSyxDQUFDO29CQUMxQyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUM7Z0JBRXRELFlBQVksQ0FBQyxNQUFNLGNBQWMsR0FBbUIsTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyw2SkFBNko7Z0JBQ3JQLElBQUksWUFBWSxHQUFXLENBQUMsQ0FBQyxDQUFDLENBQWdCLDJJQUEySTtnQkFDekwsS0FBSyxDQUFDLFlBQVkseUJBQThCLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1FQUFtRTtnQkFDM0ksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7b0JBQ0csZ0hBQWdIO29CQUNoSCxJQUFJLFVBQVUsR0FBdUIsa0RBQXFFLEdBQUcsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUE2QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ25MLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDVixDQUFDO3dCQUNHLE9BQU87d0JBQ1AsTUFBTSxTQUFTLEdBQVksS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUNuRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7NEJBQ3RCLFlBQVksR0FBRyxDQUFDLENBQUM7d0JBQ3JCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUNkLENBQUM7NEJBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDOzRCQUNuQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7d0JBQ3BCLENBQUM7b0JBQ0wsQ0FBQztvQkFDRCxJQUFJLENBQ0osQ0FBQzt3QkFDRywwSkFBMEo7d0JBQzFKLFVBQVUsSUFBSSx5Q0FBNkQsQ0FBQyxDQUFDLDRCQUE0Qjt3QkFDekcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUN4RCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7NEJBQ3RCLFlBQVksR0FBRyxDQUFDLENBQUM7b0JBQ3pCLENBQUM7Z0JBQ0wsQ0FBQztnQkFDRCxFQUFFLENBQUMsQ0FBQyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDeEIsQ0FBQztvQkFDRyxrSEFBa0g7b0JBQ2xILEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUM7d0JBQ3RCLGNBQWMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBVSx1QkFBdUI7b0JBQ2pGLElBQUk7d0JBQ0EsY0FBYyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFXLHlCQUF5QjtnQkFDdkYsQ0FBQztnQkFDRCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BCLEVBQUUsQ0FBQyxDQUFDLG1DQUFtQyxDQUFDO29CQUNwQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUM7Z0JBQ3BELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FDekMsQ0FBQztZQUNHLFlBQVksQ0FBQyxNQUFNLGNBQWMsR0FBb0IsTUFBTSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3BGLEtBQUssQ0FBQyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNyRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FDckMsQ0FBQztnQkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixLQUFLLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RCxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ3RCLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEMsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyw0QkFBNEIsRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQ3pILENBQUM7Z0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsS0FBSyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDdEQsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUN0QixLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3hDLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDOUIsQ0FBQztZQUNHLEtBQUssQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNuQyxLQUFLLENBQUMsVUFBVSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7WUFDdEQsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1lBQ3pELEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDNUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzNCLENBQUM7WUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQ25DLENBQUM7Z0JBQ0cscUZBQXFGO2dCQUNyRixLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUN2RCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUN6RCxLQUFLLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMvQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQUMsY0FBYyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7Z0JBQ3BGLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNwQyxDQUFDO2dCQUNHLHVGQUF1RjtnQkFDdkYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxxTEFBcUwsQ0FBQyxDQUFDO2dCQUN6TSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBRWhCLFlBQVksQ0FBQyxNQUFNLFVBQVUsR0FBbUIsTUFBTSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDNUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUUxRyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBQ2hDLElBQUksR0FBRyxHQUFxQixLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDdkQsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxHQUFHLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsZ0JBQVEsQ0FBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUM1TCxLQUFLLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNqRSxLQUFLLENBQUMsSUFBSSxDQUFDLG9FQUFvRSxVQUFVLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsbUZBQW1GLENBQUMsQ0FBQztnQkFDL0wsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQUUsZ0JBQVEsQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLENBQUMsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMzRyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBRXZCLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztnQkFDaEMsR0FBRyxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUNqQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxDQUFDLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzVMLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pFLEtBQUssQ0FBQyxJQUFJLENBQUMsa0ZBQWtGLENBQUMsQ0FBQztnQkFDL0YsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxLQUFLLENBQUMsY0FBYyxFQUFFLEVBQUUsZ0JBQVEsQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLENBQUMsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMzRyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBRXZCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUNqQyxDQUFDO2dCQUNHLHNDQUFzQztnQkFDdEMsNkhBQTZIO2dCQUM3SCxxRkFBcUY7Z0JBQ3JGLDJJQUEySTtnQkFDM0ksdUlBQXVJO2dCQUN2SSx3R0FBd0c7Z0JBQ3hHLDZLQUE2SztnQkFDN0ssS0FBSyxDQUFDLFdBQVcsQ0FBQyx1S0FBdUssQ0FBQyxDQUFDO2dCQUMzTCxLQUFLLENBQUMsSUFBSSxDQUFDLHFGQUFxRixDQUFDLENBQUM7Z0JBQ2xHLEtBQUssQ0FBQyxJQUFJLENBQUMsd0RBQXdELENBQUMsQ0FBQztnQkFDckUsWUFBWSxDQUFDLE1BQU0sR0FBRyxHQUEyQixNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksc0JBQWMsQ0FBQyxFQUFFLEVBQUUsc0NBQXNDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWTtnQkFDNUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNuRSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUM3QixDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQywwT0FBME8sQ0FBQyxDQUFDO1lBQzlQLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUVsQyw0R0FBNEc7WUFDNUcsaUxBQWlMO1lBQ2pMLHVLQUF1SztZQUN2SyxvTEFBb0w7WUFDcEwsa0xBQWtMO1lBQ2xMLHFLQUFxSztZQUNySyx3R0FBd0c7WUFDeEcsTUFBTSxTQUFTLEdBQXdCLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ3RELE1BQU0sUUFBUSxHQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQzNDLE1BQU0sUUFBUSxHQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1lBRTVDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzVELE1BQU0sR0FBRyxHQUFxQixLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUN6RCxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ25KLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUMxQixDQUFDO2dCQUNHLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDckIsTUFBTSxRQUFRLEdBQVcsSUFBSSxDQUFDO2dCQUM5QixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLFFBQVEsR0FBRyxHQUFHLENBQUM7Z0JBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztvQkFBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO2dCQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztvQkFBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDOUosSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsR0FBRyxDQUFDO2dCQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7b0JBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztnQkFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsR0FBRyxRQUFRLENBQUM7b0JBQUMsT0FBTyxHQUFHLFFBQVEsR0FBRyxRQUFRLENBQUM7Z0JBQzlKLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNsRSxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzVGLE1BQU0sR0FBRyxHQUFXLElBQUksY0FBTSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7Z0JBQzNFLE1BQU0sR0FBRyxHQUFXLElBQUksY0FBTSxDQUFDLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsRUFBRSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztnQkFDakcseUdBQXlHO2dCQUN6RyxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNoSCxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsQ0FBQztZQUNELEtBQUssQ0FBQyxXQUFXLENBQUMsaUNBQWlDLENBQUMsQ0FBQztZQUNyRCxZQUFZLENBQUMsTUFBTSxhQUFhLEdBQW1CLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDOUUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7Z0JBQ0csS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEIsSUFBSSxhQUFhLEdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUssNEJBQTRCO2dCQUNwRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxFQUFFLEVBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLElBQUksR0FBQyxRQUFRLEVBQUMsRUFBRSxHQUFDLFFBQVEsQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUM1SSxhQUFhLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQztnQkFDN0IsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNkLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2hCLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxhQUFhLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQztZQUNwRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FDbEMsQ0FBQztZQUNHLGdDQUFnQztZQUNoQywyS0FBMks7WUFDM0ssdUdBQXVHO1lBQ3ZHLCtKQUErSjtZQUMvSixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUEyQixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRSxDQUFDLENBQUM7Z0JBQ3JILEtBQUssQ0FBQyxVQUFVLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDbkcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNuRyxLQUFLLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7Z0JBQ3JDLEtBQUssQ0FBQyxVQUFVLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDbkcsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQywyQkFBd0MsQ0FBQztvQkFDeEcsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUM5QixTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDakQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLG1DQUFtQyxDQUFDLENBQUMsQ0FDeEQsQ0FBQztnQkFDRyxZQUFZLENBQUMsTUFBTSxRQUFRLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekUsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7b0JBQ0csTUFBTSxHQUFHLEdBQVcsVUFBVSxDQUFDLEVBQUUsQ0FBQztvQkFDbEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQzt3QkFDNUMsUUFBUSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7Z0JBQzNCLENBQUM7Z0JBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLHFDQUFxQyxDQUFDLENBQUMsQ0FDMUQsQ0FBQztnQkFDRyxjQUFjLENBQUMsK0NBQStDLENBQUMsQ0FBQztnQkFDaEUsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUEyQixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRSxDQUFDLENBQUM7Z0JBQ3RILEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUMxQixDQUFDO29CQUNHLE1BQU0sR0FBRyxHQUFXLFVBQVUsQ0FBQyxFQUFFLENBQUM7b0JBQ2xDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUM5QyxDQUFDO3dCQUNHLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQzs0QkFDdkIsMkNBQTJDOzRCQUMzQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDaEMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzdDLENBQUM7Z0JBQ0wsQ0FBQztnQkFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsd0NBQXdDLENBQUMsQ0FBQyxDQUM3RCxDQUFDO2dCQUNHLGtIQUFrSDtnQkFDbEgsWUFBWSxDQUFDLE1BQU0sUUFBUSxHQUEyQixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUUsQ0FBQyxDQUFDO2dCQUN0RyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBSyxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDekksS0FBSyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ3pJLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUN6SSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FDakMsQ0FBQztnQkFDRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzlCLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBNEIsTUFBTSxDQUFDLGNBQWMsRUFBRSxJQUFJLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDekcsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7b0JBQ0csTUFBTSxLQUFLLEdBQVcsUUFBUSxDQUFDLEVBQUUsQ0FBQztvQkFDbEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDO29CQUN6RixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3ZCLENBQUM7Z0JBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDakIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzNCLENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sUUFBUSxHQUE0QixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFFLENBQUMsQ0FBQztnQkFDOUwsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7b0JBQ0csS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDaEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQy9HLENBQUM7d0JBQ0csSUFBSSxDQUFDLEdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDekMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQzFELEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUM5RCxDQUFDO29CQUNELEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFBQyxLQUFLLENBQUMs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LEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztZQUFDLENBQUMsSUFBSSxPQUFPLENBQUM7WUFDbEcsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDek0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ1osQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1FBQzFCLENBQUM7UUFDRCxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssR0FBQyxPQUFPLENBQUM7UUFDdEgsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUM1RyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUNsSCxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsa0NBQW9ELENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUN4SyxTQUFTLENBQUMsaUJBQWlCLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUM5SixTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxjQUFNLENBQUMs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QUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUNyRCxDQUFDO2dCQUNHLFdBQVcsQ0FBQyxLQUFLLEdBQUcsY0FBYyxHQUFHLEtBQUssQ0FBQztnQkFDM0MsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixDQUFDO1FBQ0wsQ0FBQztRQUNELFNBQVMsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFNLHVEQUF1RDtRQUMxSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQztZQUM3QyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxF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 \ No newline at end of file diff --git a/imgui_demo.ts b/imgui_demo.ts index 40f7dcf..be0ad5d 100644 --- a/imgui_demo.ts +++ b/imgui_demo.ts @@ -1,4 +1,4 @@ -// dear imgui, v1.53 +// dear imgui, v1.60 WIP // (demo code) // Message to the person tempted to delete this file when integrating ImGui into their code base: @@ -55,7 +55,7 @@ import { ImGuiTreeNodeFlags } from "./imgui"; import { ImGuiWindowFlags } from "./imgui"; import { ImGuiTextEditCallbackData } from "./imgui"; -import { ImGuiSizeConstraintCallbackData } from "./imgui"; +import { ImGuiSizeCallbackData } from "./imgui"; import { ImDrawCornerFlags } from "./imgui"; import { ImU32 } from "./imgui"; import { ImVector } from "./imgui"; @@ -145,7 +145,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted(desc); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -211,7 +211,7 @@ if (show_app_about.value) { ImGui.Begin("About Dear ImGui", (value = show_app_about.value) => show_app_about.value = value, ImGui.WindowFlags.AlwaysAutoResize); - ImGui.Text(`dear imgui, ${ImGui.GetVersion()}`); + ImGui.Text(`Dear ImGui, ${ImGui.GetVersion()}`); ImGui.Separator(); ImGui.Text("By Omar Cornut and all dear imgui contributors."); ImGui.Text("Dear ImGui is licensed under the MIT License, see LICENSE for more information."); @@ -225,6 +225,7 @@ /* static */ const no_resize: Static = STATIC("no_resize", false); /* static */ const no_collapse: Static = STATIC("no_collapse", false); /* static */ const no_close: Static = STATIC("no_close", false); + /* static */ const no_nav: Static = STATIC("no_nav", false); // Demonstrate the various window flags. Typically you would just use the default. let window_flags: ImGui.WindowFlags = 0; @@ -234,6 +235,7 @@ if (no_move.value) window_flags |= ImGuiWindowFlags.NoMove; if (no_resize.value) window_flags |= ImGuiWindowFlags.NoResize; if (no_collapse.value) window_flags |= ImGuiWindowFlags.NoCollapse; + if (no_nav.value) window_flags |= ImGuiWindowFlags.NoNav; if (no_close.value) p_open = null; // Don't pass our bool* to Begin ImGui.SetNextWindowSize(new ImVec2(550,680), ImGuiCond.FirstUseEver); @@ -298,7 +300,8 @@ ImGui.Checkbox("No move", (value = no_move.value) => no_move.value = value); ImGui.SameLine(150); ImGui.Checkbox("No resize", (value = no_resize.value) => no_resize.value = value); ImGui.SameLine(300); ImGui.Checkbox("No collapse", (value = no_collapse.value) => no_collapse.value = value); - ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); + ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); ImGui.SameLine(150); + ImGui.Checkbox("No nav", (value = no_nav.value) => no_nav.value = value); if (ImGui.TreeNode("Style")) { @@ -465,7 +468,7 @@ { ImGui.Text("blah blah"); ImGui.SameLine(); - if (ImGui.SmallButton("print")) console.log(`Child ${i} pressed`); + if (ImGui.SmallButton("button")) {} ImGui.TreePop(); } ImGui.TreePop(); @@ -656,30 +659,63 @@ ImGui.SameLine(); } ImGui.NewLine(); - ImGui.Text(`Pressed ${pressed_count} times.`); + ImGui.Text(`Pressed ${pressed_count.value} times.`); ImGui.TreePop(); } if (ImGui.TreeNode("Selectables")) { + // Selectable() has 2 overloads: + // - The one taking "bool selected" as a read-only selection information. When Selectable() has been clicked is returns true and you can alter selection state accordingly. + // - The one taking "bool* p_selected" as a read-write selection information (convenient in some cases) + // The earlier is more flexible, as in real application your selection may be stored in a different manner (in flags within objects, as an external list, etc). if (ImGui.TreeNode("Basic")) { - /* static */ const selected: Static = STATIC("selected#672", [ false, true, false, false ]); - ImGui.Selectable("1. I am selectable", (value = selected.value[0]) => selected.value[0] = value); - ImGui.Selectable("2. I am selectable", (value = selected.value[1]) => selected.value[1] = value); + /* static */ const selection: Static = STATIC("selection#695", [ false, true, false, false, false ]); + ImGui.Selectable("1. I am selectable", (value = selection.value[0]) => selection.value[0] = value); + ImGui.Selectable("2. I am selectable", (value = selection.value[1]) => selection.value[1] = value); ImGui.Text("3. I am not selectable"); - ImGui.Selectable("4. I am selectable", (value = selected.value[2]) => selected.value[2] = value); - if (ImGui.Selectable("5. I am double clickable", selected.value[3], ImGuiSelectableFlags.AllowDoubleClick)) + ImGui.Selectable("4. I am selectable", (value = selection.value[3]) => selection.value[2] = value); + if (ImGui.Selectable("5. I am double clickable", selection.value[4], ImGuiSelectableFlags.AllowDoubleClick)) if (ImGui.IsMouseDoubleClicked(0)) - selected.value[3] = !selected.value[3]; + selection.value[4] = !selection.value[4]; ImGui.TreePop(); } - if (ImGui.TreeNode("Rendering more text into the same block")) + if (ImGui.TreeNode("Selection State: Single Selection")) { + /* static */ const selected: Static = STATIC("selected#707", -1); + for (let n = 0; n < 5; n++) + { + const buf: string = `Object ${n}`; + if (ImGui.Selectable(buf, selected.value === n)) + selected.value = n; + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Selection State: Multiple Selection")) + { + ShowHelpMarker("Hold CTRL and click to select multiple items."); + /* static */ const selection: Static = STATIC("selection#720", [ false, false, false, false, false ]); + for (let n = 0; n < 5; n++) + { + const buf: string = `Object ${n}`; + if (ImGui.Selectable(buf, selection.value[n])) + { + if (!ImGui.GetIO().KeyCtrl) // Clear selection when CTRL is not held + // memset(selection, 0, sizeof(selection)); + selection.value.fill(false); + selection.value[n] = !selection.value[n]; + } + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Rendering more text into the same line")) + { + // Using the Selectable() override that takes "bool* p_selected" parameter and toggle your booleans automatically. /* static */ const selected: Static = STATIC("selected#687", [ false, false, false ]); - ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); + ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); ImGui.Selectable("Hello.cpp", (value = selected.value[1]) => selected.value[1] = value); ImGui.SameLine(300); ImGui.Text("12,345 bytes"); - ImGui.Selectable("Hello.h", (value = selected.value[2]) => selected.value[2] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); + ImGui.Selectable("Hello.h", (value = selected.value[2]) => selected.value[2] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); ImGui.TreePop(); } if (ImGui.TreeNode("In columns")) @@ -825,14 +861,14 @@ { /* static */ const color: Static = STATIC("color#863", new ImColor(114, 144, 154, 200).toImVec4()); - /* static */ const hdr: Static = STATIC("hdr", false); /* static */ const alpha_preview: Static = STATIC("alpha_preview", true); /* static */ const alpha_half_preview: Static = STATIC("alpha_half_preview", false); /* static */ const options_menu: Static = STATIC("options_menu", true); - ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); ImGui.SameLine(); ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); + /* static */ const hdr: Static = STATIC("hdr", false); ImGui.Checkbox("With Alpha Preview", (value = alpha_preview.value) => alpha_preview.value = value); ImGui.Checkbox("With Half Alpha Preview", (value = alpha_half_preview.value) => alpha_half_preview.value = value); ImGui.Checkbox("With Options Menu", (value = options_menu.value) => options_menu.value = value); ImGui.SameLine(); ShowHelpMarker("Right-click on the individual color widget to show options."); + ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); ImGui.SameLine(); ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); const misc_flags: ImGuiColorEditFlags = (hdr.value ? ImGuiColorEditFlags.HDR : 0) | (alpha_half_preview.value ? ImGuiColorEditFlags.AlphaPreviewHalf : (alpha_preview.value ? ImGuiColorEditFlags.AlphaPreview : 0)) | (options_menu.value ? 0 : ImGuiColorEditFlags.NoOptions); ImGui.Text("Color widget:"); @@ -1077,9 +1113,10 @@ if (ImGui.TreeNode("Child regions")) { /* static */ const disable_mouse_wheel: Static = STATIC("disable_mouse_wheel", false); + /* static */ const disable_menu: Static = STATIC("disable_menu", false); ImGui.Checkbox("Disable Mouse Wheel", (value = disable_mouse_wheel.value) => disable_mouse_wheel.value = value); + ImGui.Checkbox("Disable Menu", (value = disable_menu.value) => disable_menu.value = value); - ImGui.Text("Without border"); /* static */ const line: Static = STATIC("line", 50); let goto_line: boolean = ImGui.Button("Goto"); ImGui.SameLine(); @@ -1087,32 +1124,46 @@ goto_line = ImGui.InputInt("##Line", (value = line.value) => line.value = value, 0, 0, ImGuiInputTextFlags.EnterReturnsTrue) || goto_line; ImGui.PopItemWidth(); - ImGui.BeginChild("Sub1", new ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5,300), false, ImGuiWindowFlags.HorizontalScrollbar | (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0)); - for (let i = 0; i < 100; i++) + // Child 1: no border, enable horizontal scrollbar { - ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); - if (goto_line && line.value === i) + ImGui.BeginChild("Child1", new ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, ImGuiWindowFlags.HorizontalScrollbar | (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0)); + for (let i = 0; i < 100; i++) + { + ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); + if (goto_line && line.value === i) + ImGui.SetScrollHere(); + } + if (goto_line && line.value >= 100) ImGui.SetScrollHere(); + ImGui.EndChild(); } - if (goto_line && line.value >= 100) - ImGui.SetScrollHere(); - ImGui.EndChild(); ImGui.SameLine(); - ImGui.PushStyleVar(ImGuiStyleVar.ChildRounding, 5.0); - ImGui.BeginChild("Sub2", new ImVec2(0,300), true, (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0)); - ImGui.Text("With border"); - ImGui.Columns(2); - for (let i = 0; i < 100; i++) + // Child 2: rounded border { - if (i === 50) - ImGui.NextColumn(); - const buf: string = `${("00000000" + (i*5731).toString(16)).substr(-8)}`; - ImGui.Button(buf, new ImVec2(-1.0, 0.0)); + ImGui.PushStyleVar(ImGuiStyleVar.ChildRounding, 5.0); + ImGui.BeginChild("Child2", new ImVec2(0,300), true, (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0) | (disable_menu ? 0 : ImGuiWindowFlags.MenuBar)); + if (!disable_menu && ImGui.BeginMenuBar()) + { + if (ImGui.BeginMenu("Menu")) + { + ShowExampleMenuFile(); + ImGui.EndMenu(); + } + ImGui.EndMenuBar(); + } + ImGui.Columns(2); + for (let i = 0; i < 100; i++) + { + if (i === 50) + ImGui.NextColumn(); + const buf: string = `${("00000000" + (i*5731).toString(16)).substr(-8)}`; + ImGui.Button(buf, new ImVec2(-1.0, 0.0)); + } + ImGui.EndChild(); + ImGui.PopStyleVar(); } - ImGui.EndChild(); - ImGui.PopStyleVar(); ImGui.TreePop(); } @@ -1555,6 +1606,7 @@ ImGui.PopStyleVar(); if (ImGui.Button("OK", new ImVec2(120,0))) { ImGui.CloseCurrentPopup(); } + ImGui.SetItemDefaultFocus(); ImGui.SameLine(); if (ImGui.Button("Cancel", new ImVec2(120,0))) { ImGui.CloseCurrentPopup(); } ImGui.EndPopup(); @@ -1574,7 +1626,7 @@ ImGui.OpenPopup("Stacked 2"); if (ImGui.BeginPopupModal("Stacked 2")) { - ImGui.Text("Hello from Stacked The Second"); + ImGui.Text("Hello from Stacked The Second!"); if (ImGui.Button("Close")) ImGui.CloseCurrentPopup(); ImGui.EndPopup(); @@ -1804,18 +1856,24 @@ ImGui.BulletText(lines[i]); } - if (ImGui.CollapsingHeader("Inputs & Focus")) + if (ImGui.CollapsingHeader("Inputs, Navigation & Focus")) { const io: ImGuiIO = ImGui.GetIO(); - ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); - ImGui.SameLine(); ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); ImGui.Text(`WantCaptureMouse: ${io.WantCaptureMouse}`); ImGui.Text(`WantCaptureKeyboard: ${io.WantCaptureKeyboard}`); ImGui.Text(`WantTextInput: ${io.WantTextInput}`); ImGui.Text(`WantMoveMouse: ${io.WantMoveMouse}`); + ImGui.Text(`NavActive: ${io.NavActive}, NavVisible: ${io.NavVisible}`); - if (ImGui.TreeNode("Keyboard & Mouse State")) + ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); + ImGui.SameLine(); ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + ImGui.CheckboxFlags("io.NavFlags: EnableGamepad", (value = io.NavFlags) => io.NavFlags = value, ImGui.ImGuiNavFlags.EnableGamepad); + ImGui.CheckboxFlags("io.NavFlags: EnableKeyboard", (value = io.NavFlags) => io.NavFlags = value, ImGui.ImGuiNavFlags.EnableKeyboard); + ImGui.CheckboxFlags("io.NavFlags: MoveMouse", (value = io.NavFlags) => io.NavFlags = value, ImGui.ImGuiNavFlags.MoveMouse); + ImGui.SameLine(); ShowHelpMarker("Request ImGui to move your move cursor when using gamepad/keyboard navigation. NewFrame() will change io.MousePos and set the io.WantMoveMouse flag, your backend will need to apply the new mouse position."); + + if (ImGui.TreeNode("Keyboard, Mouse & Navigation State")) { if (ImGui.IsMousePosValid()) ImGui.Text(`Mouse pos: (${io.MousePos.x}, ${io.MousePos.x})`); @@ -1832,6 +1890,10 @@ ImGui.Text("Keys release:"); for (let i = 0; i < IM_ARRAYSIZE(io.KeysDown); i++) if (ImGui.IsKeyReleased(i)) { ImGui.SameLine(); ImGui.Text(i.toString()); } ImGui.Text(`Keys mods: ${io.KeyCtrl ? "CTRL " : ""}${io.KeyShift ? "SHIFT " : ""}${io.KeyAlt ? "ALT " : ""}${io.KeySuper ? "SUPER " : ""}`); + ImGui.Text("NavInputs down:"); for (let i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputs[i] > 0.0) { ImGui.SameLine(); ImGui.Text(`[${i}] ${io.NavInputs[i].toFixed(2)}`); } + ImGui.Text("NavInputs pressed:"); for (let i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputsDownDuration[i] == 0.0) { ImGui.SameLine(); ImGui.Text(`[${i}]`); } + ImGui.Text("NavInputs duration:"); for (let i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputsDownDuration[i] >= 0.0) { ImGui.SameLine(); ImGui.Text(`[${i}] ${io.NavInputsDownDuration[i].toFixed(2)}`); } + ImGui.Button("Hovering me sets the\nkeyboard capture flag"); if (ImGui.IsItemHovered()) ImGui.CaptureKeyboardFromApp(true); @@ -1879,11 +1941,22 @@ ImGui.InputText("3 (tab skip)", buf.value, IM_ARRAYSIZE(buf.value)); if (ImGui.IsItemActive()) has_focus = 3; ImGui.PopAllowKeyboardFocus(); + if (has_focus) ImGui.Text(`Item with focus: ${has_focus}`); else ImGui.Text("Item with focus: "); - ImGui.TextWrapped("Cursor & selection are preserved when refocusing last used item in code."); + + // Use >= 0 parameter to SetKeyboardFocusHere() to focus an upcoming item + /* static */ const f3: Static> = STATIC>("f3", [ 0.0, 0.0, 0.0 ]); + let focus_ahead: number = -1; + if (ImGui.Button("Focus on X")) focus_ahead = 0; ImGui.SameLine(); + if (ImGui.Button("Focus on Y")) focus_ahead = 1; ImGui.SameLine(); + if (ImGui.Button("Focus on Z")) focus_ahead = 2; + if (focus_ahead != -1) ImGui.SetKeyboardFocusHere(focus_ahead); + ImGui.SliderFloat3("Float3", f3.value, 0.0, 1.0) + + ImGui.TextWrapped("NB: Cursor & selection are preserved when refocusing last used item in code."); ImGui.TreePop(); } @@ -1899,7 +1972,8 @@ `IsWindowFocused() = ${ImGui.IsWindowFocused()}\n` + `IsWindowFocused(_ChildWindows) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.ChildWindows)}\n` + `IsWindowFocused(_ChildWindows|_RootWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.ChildWindows | ImGuiFocusedFlags.RootWindow)}\n` + - `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.RootWindow)}\n`); + `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.RootWindow)}\n` + + `IsWindowFocused(_AnyWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.AnyWindow)}\n`); // Testing IsWindowHovered() function with its various flags (note that the flags can be combined) ImGui.BulletText( @@ -1908,7 +1982,8 @@ `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.AllowWhenBlockedByActiveItem)}\n` + `IsWindowHovered(_ChildWindows) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.ChildWindows)}\n` + `IsWindowHovered(_ChildWindows|_RootWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.ChildWindows | ImGuiHoveredFlags.RootWindow)}\n` + - `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.RootWindow)}\n"`); + `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.RootWindow)}\n"` + + `IsWindowHovered(_AnyWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.AnyWindow)}\n"`); // Testing IsItemHovered() function (because BulletText is an item itself and that would affect the output of IsItemHovered, we pass all lines in a single items to shorten the code) ImGui.Button("ITEM"); @@ -1940,7 +2015,9 @@ // Draw a line between the button and the mouse cursor const draw_list: ImGui.ImDrawList = ImGui.GetWindowDrawList(); draw_list.PushClipRectFullScreen(); - draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); + // draw_list->AddLine(io.MouseClickedPos[0], io.MousePos, ImGui::GetColorU32(ImGuiCol_Button), 4.0f); + draw_list.AddLine(io.MouseClickedPos[0], io.MousePos, ImGui.GetColorU32(ImGuiCol.Button), 4.0); + // draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); draw_list.PopClipRect(); // Drag operations gets "unlocked" when the mouse has moved past a certain threshold (the default threshold is stored in io.MouseDragThreshold) @@ -1965,7 +2042,7 @@ { const label: string = `Mouse cursor ${i}: ${mouse_cursors_names[i]}`; ImGui.Bullet(); ImGui.Selectable(label, false); - if (ImGui.IsItemHovered()) + if (ImGui.IsItemHovered() || ImGui.IsItemFocused()) ImGui.SetMouseCursor(i); } ImGui.TreePop(); @@ -1979,7 +2056,7 @@ // Here we use the simplified Combo() api that packs items into a single literal string. Useful for quick combo boxes where the choices are known locally. export function ShowStyleSelector(label: string): boolean { - /* static */ const style_idx: Static = STATIC("style_idx", 0); + /* static */ const style_idx: Static = STATIC("style_idx", -1); if (ImGui.Combo(label, (value = style_idx.value) => style_idx.value = value, "Classic\0Dark\0Light\0")) { switch (style_idx.value) @@ -2011,7 +2088,7 @@ ShowHelpMarker( "- Load additional fonts with io.Fonts->AddFontFromFileTTF().\n" + "- The font atlas is built when calling io.Fonts->GetTexDataAsXXXX() or io.Fonts->Build().\n" + - "- Read FAQ and documentation in extra_fonts/ for more details.\n" + + "- Read FAQ and documentation in misc/fonts for more details.\n" + "- If you need to add/remove fonts at runtime (e.g. for DPI change), do it before calling NewFrame()."); } @@ -2127,7 +2204,7 @@ ImGui.RadioButton("Alpha", (value = alpha_flags.value) => alpha_flags.value = value, ImGuiColorEditFlags.AlphaPreview); ImGui.SameLine(); ImGui.RadioButton("Both", (value = alpha_flags.value) => alpha_flags.value = value, ImGuiColorEditFlags.AlphaPreviewHalf); - ImGui.BeginChild("#colors", new ImVec2(0, 300), true, ImGuiWindowFlags.AlwaysVerticalScrollbar | ImGuiWindowFlags.AlwaysHorizontalScrollbar); + ImGui.BeginChild("#colors", new ImVec2(0, 300), true, ImGuiWindowFlags.AlwaysVerticalScrollbar | ImGuiWindowFlags.AlwaysHorizontalScrollbar | ImGuiWindowFlags.NavFlattened); ImGui.PushItemWidth(-160); for (let i = 0; i < ImGuiCol.COUNT; i++) { @@ -2139,7 +2216,7 @@ if (!style.Colors[i].Equals(ref.Colors[i])) { // Tips: in a real user application, you may want to merge and use an icon font into the main font, so instead of "Save"/"Revert" you'd use icons. - // Read the FAQ and extra_fonts/README.txt about using icon fonts. It's really easy and super convenient! + // Read the FAQ and misc/fonts/README.txt about using icon fonts. It's really easy and super convenient! ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Save")) ref.Colors[i].Copy(style.Colors[i]); ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Revert")) style.Colors[i].Copy(ref.Colors[i]); } @@ -2176,6 +2253,7 @@ // ImGui.Text("The quick brown fox jumps over the lazy dog"); // ImGui.PopFont(); // ImGui.DragFloat("Font scale", &font->Scale, 0.005f, 0.3f, 2.0f, "%.1f"); // Scale only this font + // ImGui.InputFloat("Font offset", &font->DisplayOffset.y, 1, 1, 0); // ImGui.SameLine(); ShowHelpMarker("Note than the default embedded font is NOT meant to be scaled.\n\nFont are currently rendered into bitmaps at a given size at the time of building the atlas. You may oversample them to get some flexibility with scaling. You can also render at multiple sizes and select which one to use at runtime.\n\n(Glimmer of hope: the atlas system should hopefully be rewritten in the future to make scaling more natural and automatic.)"); // ImGui.Text("Ascent: %f, Descent: %f, Height: %f", font->Ascent, font->Descent, font->Ascent - font->Descent); // ImGui.Text("Fallback character: '%c' (%d)", font->FallbackChar, font->FallbackChar); @@ -2310,15 +2388,17 @@ } if (ImGui.BeginMenu("Colors")) { - ImGui.PushStyleVar(ImGuiStyleVar.FramePadding, new ImVec2(0,0)); + const sz: number = ImGui.GetTextLineHeight(); for (let i = 0; i < ImGuiCol.COUNT; i++) { const name: string = ImGui.GetStyleColorName(i as ImGuiCol); ImGui.ColorButton(name, ImGui.GetStyleColorVec4(i as ImGuiCol)); + const p: ImGui.interface_ImVec2 = ImGui.GetCursorScreenPos(); + ImGui.GetWindowDrawList().AddRectFilled(p, new ImVec2(p.x+sz, p.y+sz), ImGui.GetColorU32(i as ImGuiCol)); + ImGui.Dummy(new ImVec2(sz, sz)); ImGui.SameLine(); ImGui.MenuItem(name); } - ImGui.PopStyleVar(); ImGui.EndMenu(); } if (ImGui.BeginMenu("Disabled", false)) // Disabled @@ -2351,10 +2431,10 @@ { class CustomConstraints // Helper functions to demonstrate programmatic constraints { - public static Square(data: ImGuiSizeConstraintCallbackData): void { + public static Square(data: ImGuiSizeCallbackData): void { data.DesiredSize.x = data.DesiredSize.y = IM_MAX(data.DesiredSize.x, data.DesiredSize.y); } - public static Step(data: ImGuiSizeConstraintCallbackData): void { + public static Step(data: ImGuiSizeCallbackData): void { const step: number = data.UserData; data.DesiredSize.x = Math.floor(data.DesiredSize.x / step + 0.5) * step; data.DesiredSize.y = Math.floor(data.DesiredSize.y / step + 0.5) * step; @@ -2406,7 +2486,7 @@ const window_pos: Readonly = new ImVec2((corner.value & 1) ? ImGui.GetIO().DisplaySize.x - DISTANCE : DISTANCE, (corner.value & 2) ? ImGui.GetIO().DisplaySize.y - DISTANCE : DISTANCE); const window_pos_pivot: Readonly = new ImVec2((corner.value & 1) ? 1.0 : 0.0, (corner.value & 2) ? 1.0 : 0.0); ImGui.SetNextWindowPos(window_pos, ImGuiCond.Always, window_pos_pivot); - ImGui.PushStyleColor(ImGuiCol.WindowBg, new ImVec4(0.0, 0.0, 0.0, 0.3)); // Transparent background + ImGui.SetNextWindowBgAlpha(0.3); // Transparent background if (ImGui.Begin("Example: Fixed Overlay", p_open, ImGuiWindowFlags.NoTitleBar|ImGuiWindowFlags.NoResize|ImGuiWindowFlags.AlwaysAutoResize|ImGuiWindowFlags.NoMove|ImGuiWindowFlags.NoSavedSettings)) { ImGui.Text("Simple overlay\nin the corner of the screen.\n(right-click to change position)"); @@ -2418,11 +2498,11 @@ if (ImGui.MenuItem("Top-right", null, corner.value === 1)) corner.value = 1; if (ImGui.MenuItem("Bottom-left", null, corner.value === 2)) corner.value = 2; if (ImGui.MenuItem("Bottom-right", null, corner.value === 3)) corner.value = 3; + if (p_open() && ImGui.MenuItem("Close")) p_open(false); ImGui.EndPopup(); } ImGui.End(); } - ImGui.PopStyleColor(); } // Demonstrate using "##" and "###" in identifiers to manipulate ID generation. @@ -2527,7 +2607,7 @@ { adding_preview = true; points.value.push_back(mouse_pos_in_canvas); - if (!ImGui.GetIO().MouseDown[0]) + if (!ImGui.IsMouseDown(0)) adding_line.value = adding_preview = false; } if (ImGui.IsItemHovered()) @@ -2672,14 +2752,14 @@ ImGui.PushStyleVar(ImGuiStyleVar.ItemSpacing, new ImVec2(4,1)); // Tighten spacing if (copy_to_clipboard) ImGui.LogToClipboard(); + const col_default_text: Readonly = ImGui.GetStyleColorVec4(ImGuiCol.Text); for (let i = 0; i < this.Items.Size; i++) { // const char* item = Items[i]; const item: string = this.Items.Data[i]; if (!filter.value.PassFilter(item)) continue; - // ImVec4 col = ImVec4(1.0f,1.0f,1.0f,1.0f); // A better implementation may store a type per-item. For the sample let's just parse the text. - let col: ImVec4 = new ImVec4(1.0,1.0,1.0,1.0); // A better implementation may store a type per-item. For the sample let's just parse the text. + let col: ImGui.interface_ImVec4 = col_default_text // if (strstr(item, "[error]")) col = ImColor(1.0f,0.4f,0.4f,1.0f); if (/\[error\]/.test(item)) col = new ImVec4(1.0,0.4,0.4,1.0); // else if (strncmp(item, "# ", 2) === 0) col = ImColor(1.0f,0.78f,0.58f,1.0f); @@ -2698,6 +2778,7 @@ ImGui.Separator(); // Command-line + let reclaim_focus: boolean = false; if (ImGui.InputText("Input", this.InputBuf, IM_ARRAYSIZE(this.InputBuf), ImGuiInputTextFlags.EnterReturnsTrue|ImGuiInputTextFlags.CallbackCompletion|ImGuiInputTextFlags.CallbackHistory, ExampleAppConsole.TextEditCallbackStub, this)) { // char* input_end = InputBuf+strlen(InputBuf); @@ -2708,10 +2789,12 @@ this.ExecCommand(this.InputBuf.buffer); // strcpy(InputBuf, ""); this.InputBuf.buffer = ""; + reclaim_focus = true; } - // Demonstrate keeping auto focus on the input box - if (ImGui.IsItemHovered() || (ImGui.IsWindowFocused(ImGuiFocusedFlags.RootAndChildWindows) && !ImGui.IsAnyItemActive() && !ImGui.IsMouseClicked(0))) + // Demonstrate keeping focus on the input box + ImGui.SetItemDefaultFocus(); + if (reclaim_focus) ImGui.SetKeyboardFocusHere(-1); // Auto focus previous widget ImGui.End(); diff --git a/Makefile b/Makefile index 82ac780..8969a66 100644 --- a/Makefile +++ b/Makefile @@ -112,7 +112,7 @@ IMGUI_NATIVE_EXAMPLE_PATH = $(IMGUI_PATH)/examples/sdl_opengl2_example IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/main.cpp -IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl.cpp +IMGUI_NATIVE_EXAMPLE_SOURCE_CXX += $(IMGUI_NATIVE_EXAMPLE_PATH)/imgui_impl_sdl_gl2.cpp IMGUI_NATIVE_EXAMPLE_BUILD = echo $$(uname) IMGUI_NATIVE_EXAMPLE_CLEAN = echo $$(uname) diff --git a/bind-imgui.cpp b/bind-imgui.cpp index e313bfd..2734040 100644 --- a/bind-imgui.cpp +++ b/bind-imgui.cpp @@ -177,23 +177,23 @@ // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -// struct ImGuiSizeConstraintCallbackData +// struct ImGuiSizeCallbackData // { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. // ImVec2 DesiredSize; // Read-write. Desired size, based on user's mouse position. Write to this field to restrain resizing. // }; -EMSCRIPTEN_BINDINGS(ImGuiSizeConstraintCallbackData) { - emscripten::class_("ImGuiSizeConstraintCallbackData") +EMSCRIPTEN_BINDINGS(ImGuiSizeCallbackData) { + emscripten::class_("ImGuiSizeCallbackData") .constructor() - .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getPos", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.Pos; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getCurrentSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.CurrentSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) - .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeConstraintCallbackData& that), { + .function("getDesiredSize", FUNCTION(emscripten::val, (const ImGuiSizeCallbackData& that), { const ImVec2* p = &that.DesiredSize; return emscripten::val(p); }), emscripten::allow_raw_pointers()) ; @@ -595,6 +595,8 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + .property("NavFlags", &ImGuiIO::NavFlags) // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -688,6 +690,13 @@ if (0 <= index && index < 512) { that->KeysDown[index] = value; return true; } return false; }), emscripten::allow_raw_pointers()) // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + .function("getNavInputsAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputs[index] : 0.0f; + }), emscripten::allow_raw_pointers()) + .function("setNavInputsAt", FUNCTION(bool, (ImGuiIO* that, int index, float value), { + if (0 <= index && index < ImGuiNavInput_COUNT) { that->NavInputs[index] = value; return true; } return false; + }), emscripten::allow_raw_pointers()) // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -707,6 +716,10 @@ .property("WantTextInput", &ImGuiIO::WantTextInput) // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. .property("WantMoveMouse", &ImGuiIO::WantMoveMouse) + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + .property("NavActive", &ImGuiIO::NavActive) + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + .property("NavVisible", &ImGuiIO::NavVisible) // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames .property("Framerate", &ImGuiIO::Framerate) // int MetricsAllocs; // Number of active memory allocations @@ -724,6 +737,12 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + .function("getMouseClickedPosAt", FUNCTION(emscripten::val, (const ImGuiIO* that, int index), { + if (0 <= index && index < 5) { + const ImVec2* p = &that->MouseClickedPos[index]; return emscripten::val(p); + } + return emscripten::val::undefined(); + }), emscripten::allow_raw_pointers()) // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -741,6 +760,11 @@ return (0 <= index && index < 512) ? that->KeysDownDuration[index] : -1.0f; }), emscripten::allow_raw_pointers()) // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + .function("getNavInputsDownDurationAt", FUNCTION(float, (const ImGuiIO* that, int index), { + return (0 <= index && index < ImGuiNavInput_COUNT) ? that->NavInputsDownDuration[index] : -1.0f; + }), emscripten::allow_raw_pointers()) + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); ; @@ -819,6 +843,8 @@ .function("getDisplaySafeAreaPadding", FUNCTION(emscripten::val, (ImGuiStyle* that), { ImVec2* p = &that->DisplaySafeAreaPadding; return emscripten::val(p); }), emscripten::allow_raw_pointers()) + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + .property("MouseCursorScale", &ImGuiStyle::MouseCursorScale) // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. .property("AntiAliasedLines", &ImGuiStyle::AntiAliasedLines) // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -839,10 +865,11 @@ ; } -// EMSCRIPTEN_BINDINGS(ImGuiContext) { -// emscripten::class_("ImGuiContext") -// ; -// } +class ImGuiContext_ {}; +EMSCRIPTEN_BINDINGS(ImGuiContext) { + emscripten::class_("ImGuiContext") + ; +} static emscripten::val _PlotLines_values_getter = emscripten::val::undefined(); static emscripten::val _PlotLines_data = emscripten::val::undefined(); @@ -854,11 +881,34 @@ emscripten::constant("ImDrawVertSize", sizeof(ImDrawVert)); emscripten::constant("ImDrawIdxSize", sizeof(ImDrawIdx)); - #define OFFSETOF(TYPE, ELEMENT) ((int)&(((TYPE *)0)->ELEMENT)) - emscripten::constant("ImDrawVertPosOffset", OFFSETOF(ImDrawVert, pos)); - emscripten::constant("ImDrawVertUVOffset", OFFSETOF(ImDrawVert, uv)); - emscripten::constant("ImDrawVertColOffset", OFFSETOF(ImDrawVert, col)); - #undef OFFSETOF + emscripten::constant("ImDrawVertPosOffset", IM_OFFSETOF(ImDrawVert, pos)); + emscripten::constant("ImDrawVertUVOffset", IM_OFFSETOF(ImDrawVert, uv)); + emscripten::constant("ImDrawVertColOffset", IM_OFFSETOF(ImDrawVert, col)); + + // Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). + // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. + // All those functions are not reliant on the current context. + // IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); + emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::CreateContext(); + int p = (int)ctx; + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(p); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context + emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::DestroyContext(_ctx); + })); + // IMGUI_API ImGuiContext* GetCurrentContext(); + emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { + ImGuiContext* ctx = ImGui::GetCurrentContext(); + return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); + }), emscripten::allow_raw_pointers()); + // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); + emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { + ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); + ImGui::SetCurrentContext(_ctx); + })); // Main // IMGUI_API ImGuiIO& GetIO(); @@ -895,8 +945,6 @@ })); // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! emscripten::function("EndFrame", &ImGui::EndFrame); - // IMGUI_API void Shutdown(); - emscripten::function("Shutdown", &ImGui::Shutdown); // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -938,6 +986,18 @@ })); // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). emscripten::function("ShowUserGuide", &ImGui::ShowUserGuide); + // IMGUI_API const char* GetVersion(); + emscripten::function("GetVersion", FUNCTION(std::string, (), { + return ImGui::GetVersion(); + })); + + // Styles + // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); // New, recommended style + emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); // Classic imgui style (default) + emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); + // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); // Best used with borders and a custom, thicker font + emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1020,7 +1080,7 @@ if (!custom_callback.isUndefined() && !custom_callback.isNull()) { static emscripten::val _custom_callback = custom_callback; static emscripten::val _custom_callback_data = custom_callback_data; - ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeConstraintCallbackData* data), { + ImGui::SetNextWindowSizeConstraints(import_ImVec2(size_min), import_ImVec2(size_max), FUNCTION(void, (ImGuiSizeCallbackData* data), { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() // ImVec2 Pos; // Read-only. Window position, for reference. // ImVec2 CurrentSize; // Read-only. Current window size. @@ -1047,6 +1107,8 @@ emscripten::function("SetNextWindowCollapsed", &ImGui::SetNextWindowCollapsed); // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() emscripten::function("SetNextWindowFocus", &ImGui::SetNextWindowFocus); + // IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. + emscripten::function("SetNextWindowBgAlpha", &ImGui::SetNextWindowBgAlpha); // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. emscripten::function("SetWindowPos", FUNCTION(void, (emscripten::val pos, ImGuiCond cond), { ImGui::SetWindowPos(import_ImVec2(pos), cond); @@ -1998,14 +2060,6 @@ // IMGUI_API void PopClipRect(); emscripten::function("PopClipRect", &ImGui::PopClipRect); - // Styles - // IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsClassic", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsClassic(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsDark", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsDark(dst); }), emscripten::allow_raw_pointers()); - // IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); - emscripten::function("StyleColorsLight", FUNCTION(void, (ImGuiStyle* dst), { ImGui::StyleColorsLight(dst); }), emscripten::allow_raw_pointers()); - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2019,6 +2073,8 @@ emscripten::function("IsItemHovered", &ImGui::IsItemHovered); // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) emscripten::function("IsItemActive", &ImGui::IsItemActive); + // IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? + emscripten::function("IsItemFocused", &ImGui::IsItemFocused); // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) emscripten::function("IsItemClicked", &ImGui::IsItemClicked); // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -2027,6 +2083,8 @@ emscripten::function("IsAnyItemHovered", &ImGui::IsAnyItemHovered); // IMGUI_API bool IsAnyItemActive(); emscripten::function("IsAnyItemActive", &ImGui::IsAnyItemActive); + // IMGUI_API bool IsAnyItemFocused(); + emscripten::function("IsAnyItemFocused", &ImGui::IsAnyItemFocused); // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space emscripten::function("GetItemRectMin", FUNCTION(emscripten::val, (emscripten::val out), { return export_ImVec2(ImGui::GetItemRectMin(), out); @@ -2045,10 +2103,6 @@ emscripten::function("IsWindowFocused", &ImGui::IsWindowFocused); // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. emscripten::function("IsWindowHovered", &ImGui::IsWindowHovered); - // IMGUI_API bool IsAnyWindowFocused(); - emscripten::function("IsAnyWindowFocused", &ImGui::IsAnyWindowFocused); - // IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window - emscripten::function("IsAnyWindowHovered", &ImGui::IsAnyWindowHovered); // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. emscripten::function("IsRectVisible", FUNCTION(bool, (emscripten::val size_or_rect_min, emscripten::val rect_max), { @@ -2072,10 +2126,6 @@ }), emscripten::allow_raw_pointers()); // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); emscripten::function("GetStyleColorName", FUNCTION(std::string, (ImGuiCol idx), { return std::string(ImGui::GetStyleColorName(idx)); })); - // IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items - emscripten::function("CalcItemRectClosestPoint", FUNCTION(emscripten::val, (emscripten::val pos, bool on_edge, float outward, emscripten::val out), { - return export_ImVec2(ImGui::CalcItemRectClosestPoint(import_ImVec2(pos), on_edge, outward), out); - })); // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); emscripten::function("CalcTextSize", FUNCTION(emscripten::val, (std::string text, emscripten::val text_end, bool hide_text_after_double_hash, float wrap_width, emscripten::val out), { return export_ImVec2(ImGui::CalcTextSize(text.c_str(), NULL, hide_text_after_double_hash, wrap_width), out); // TODO: text_end @@ -2130,6 +2180,8 @@ emscripten::function("GetKeyPressedAmount", &ImGui::GetKeyPressedAmount); // IMGUI_API bool IsMouseDown(int button); // is mouse button held emscripten::function("IsMouseDown", &ImGui::IsMouseDown); + // IMGUI_API bool IsAnyMouseDown(); // is any mouse button held + emscripten::function("IsAnyMouseDown", &ImGui::IsAnyMouseDown); // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) emscripten::function("IsMouseClicked", &ImGui::IsMouseClicked); // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -2193,31 +2245,4 @@ emscripten::function("SetClipboardText", FUNCTION(void, (emscripten::val text), { ImGui::SetClipboardText(text.as().c_str()); })); - - // Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. - // All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. - // IMGUI_API const char* GetVersion(); - emscripten::function("GetVersion", FUNCTION(std::string, (), { - return ImGui::GetVersion(); - })); - // IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); - emscripten::function("CreateContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::CreateContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void DestroyContext(ImGuiContext* ctx); - emscripten::function("DestroyContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::DestroyContext(_ctx); - })); - // IMGUI_API ImGuiContext* GetCurrentContext(); - emscripten::function("GetCurrentContext", FUNCTION(emscripten::val, (), { - ImGuiContext* ctx = ImGui::GetCurrentContext(); - return (ctx == NULL) ? emscripten::val::null() : emscripten::val(ctx); - }), emscripten::allow_raw_pointers()); - // IMGUI_API void SetCurrentContext(ImGuiContext* ctx); - emscripten::function("SetCurrentContext", FUNCTION(void, (emscripten::val ctx), { - ImGuiContext* _ctx = ctx.isNull() ? NULL : ctx.as(emscripten::allow_raw_pointers()); - ImGui::SetCurrentContext(_ctx); - })); } diff --git a/bind-imgui.d.ts b/bind-imgui.d.ts index 34db721..9686e21 100644 --- a/bind-imgui.d.ts +++ b/bind-imgui.d.ts @@ -60,8 +60,12 @@ AlwaysHorizontalScrollbar=1<< 15, // Always show horizontal scrollbar (even if ContentSize.x < Size.x) AlwaysUseWindowPadding = 1 << 16, // Ensure child windows without border uses style.WindowPadding (ignored by default for non-bordered child windows, because more convenient) ResizeFromAnySide = 1 << 17, // (WIP) Enable resize from any corners and borders. Your back-end needs to honor the different values of io.MouseCursor set by imgui. + NoNavInputs = 1 << 18, // No gamepad/keyboard navigation within the window + NoNavFocus = 1 << 19, // No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB) + NoNav = NoNavInputs | NoNavFocus, // [Internal] + NavFlattened = 1 << 23, // (WIP) Allow gamepad/keyboard navigation to cross over parent border to this child (only use on child that have no scrolling!) ChildWindow = 1 << 24, // Don't use! For internal use by BeginChild() Tooltip = 1 << 25, // Don't use! For internal use by BeginTooltip() Popup = 1 << 26, // Don't use! For internal use by BeginPopup() @@ -107,6 +111,7 @@ FramePadding = 1 << 10, // Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding(). //SpanAllAvailWidth = 1 << 11, // FIXME: TODO: Extend hit box horizontally even if not framed //NoScrollOnOpen = 1 << 12, // FIXME: TODO: Disable automatic scroll on TreePop() if node got just open and contents is not visible + NavCloseFromChild = 1 << 13, // (WIP) Nav: left direction may close this TreeNode() when focusing on any child (items submitted between TreeNode and TreePop) CollapsingHeader = Framed | NoAutoOpenOnLog } @@ -131,6 +136,7 @@ export const enum ImGuiFocusedFlags { ChildWindows = 1 << 0, // IsWindowFocused(): Return true if any children of the window is focused RootWindow = 1 << 1, // IsWindowFocused(): Test from root window (top most parent of the current hierarchy) + AnyWindow = 1 << 2, // IsWindowFocused(): Return true if any window is focused RootAndChildWindows = RootWindow | ChildWindows } @@ -139,10 +145,11 @@ Default = 0, // Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them. ChildWindows = 1 << 0, // IsWindowHovered() only: Return true if any children of the window is hovered RootWindow = 1 << 1, // IsWindowHovered() only: Test from root window (top most parent of the current hierarchy) - AllowWhenBlockedByPopup = 1 << 2, // Return true even if a popup window is normally blocking access to this item/window - //AllowWhenBlockedByModal = 1 << 3, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. - AllowWhenBlockedByActiveItem = 1 << 4, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. - AllowWhenOverlapped = 1 << 5, // Return true even if the position is overlapped by another window + AnyWindow = 1 << 2, // IsWindowHovered() only: Return true if any window is hovered + AllowWhenBlockedByPopup = 1 << 3, // Return true even if a popup window is normally blocking access to this item/window + //AllowWhenBlockedByModal = 1 << 4, // Return true even if a modal popup window is normally blocking access to this item/window. FIXME-TODO: Unavailable yet. + AllowWhenBlockedByActiveItem = 1 << 5, // Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns. + AllowWhenOverlapped = 1 << 6, // Return true even if the position is overlapped by another window RectOnly = AllowWhenBlockedByPopup | AllowWhenBlockedByActiveItem | AllowWhenOverlapped, RootAndChildWindows = RootWindow | ChildWindows } @@ -161,25 +168,27 @@ AcceptPeekOnly = AcceptBeforeDelivery | AcceptNoDrawDefaultRect // For peeking ahead and inspecting the payload before delivery. } -// Standard Drag and Drop payload types. You can define you own payload types using 8-characters long strings. Types starting with '_' are defined by Dear ImGui. +// Standard Drag and Drop payload types. You can define you own payload types using 12-characters long strings. Types starting with '_' are defined by Dear ImGui. export const IMGUI_PAYLOAD_TYPE_COLOR_3F: string; // = "_COL3F"; // float[3] // Standard type for colors, without alpha. User code may use this type. export const IMGUI_PAYLOAD_TYPE_COLOR_4F: string; // = "_COL4F"; // float[4] // Standard type for colors. User code may use this type. // User fill ImGuiIO.KeyMap[] array with indices into the ImGuiIO.KeysDown[512] array export const enum ImGuiKey { - Tab, // for tabbing through fields - LeftArrow, // for text edit - RightArrow,// for text edit - UpArrow, // for text edit - DownArrow, // for text edit + Tab, + LeftArrow, + RightArrow, + UpArrow, + DownArrow, PageUp, PageDown, - Home, // for text edit - End, // for text edit - Delete, // for text edit - Backspace, // for text edit - Enter, // for text edit - Escape, // for text edit + Home, + End, + Insert, + Delete, + Backspace, + Space, + Enter, + Escape, A, // for text edit CTRL+A: select all C, // for text edit CTRL+C: copy V, // for text edit CTRL+V: paste @@ -189,6 +198,50 @@ COUNT } +// [BETA] Gamepad/Keyboard directional navigation +// Keyboard: Set io.NavFlags |= EnableKeyboard to enable. NewFrame() will automatically fill io.NavInputs[] based on your io.KeyDown[] + io.KeyMap[] arrays. +// Gamepad: Set io.NavFlags |= EnableGamepad to enable. Fill the io.NavInputs[] fields before calling NewFrame(). Note that io.NavInputs[] is cleared by EndFrame(). +// Read instructions in imgui.cpp for more details. +export const enum ImGuiNavInput +{ + // Gamepad Mapping + Activate, // activate / open / toggle / tweak value // e.g. Circle (PS4), A (Xbox), B (Switch), Space (Keyboard) + Cancel, // cancel / close / exit // e.g. Cross (PS4), B (Xbox), A (Switch), Escape (Keyboard) + Input, // text input / on-screen keyboard // e.g. Triang.(PS4), Y (Xbox), X (Switch), Return (Keyboard) + Menu, // tap: toggle menu / hold: focus, move, resize // e.g. Square (PS4), X (Xbox), Y (Switch), Alt (Keyboard) + DpadLeft, // move / tweak / resize window (w/ PadMenu) // e.g. D-pad Left/Right/Up/Down (Gamepads), Arrow keys (Keyboard) + DpadRight, // + DpadUp, // + DpadDown, // + LStickLeft, // scroll / move window (w/ PadMenu) // e.g. Left Analog Stick Left/Right/Up/Down + LStickRight, // + LStickUp, // + LStickDown, // + FocusPrev, // next window (w/ PadMenu) // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + FocusNext, // prev window (w/ PadMenu) // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + TweakSlow, // slower tweaks // e.g. L1 or L2 (PS4), LB or LT (Xbox), L or ZL (Switch) + TweakFast, // faster tweaks // e.g. R1 or R2 (PS4), RB or RT (Xbox), R or ZL (Switch) + + // [Internal] Don't use directly! This is used internally to differentiate keyboard from gamepad inputs for behaviors that require to differentiate them. + // Keyboard behavior that have no corresponding gamepad mapping (e.g. CTRL+TAB) may be directly reading from io.KeyDown[] instead of io.NavInputs[]. + KeyMenu_, // toggle menu // = io.KeyAlt + KeyLeft_, // move left // = Arrow keys + KeyRight_, // move right + KeyUp_, // move up + KeyDown_, // move down + COUNT, + InternalStart_ = KeyMenu_ +} + +// [BETA] Gamepad/Keyboard directional navigation options +export const enum ImGuiNavFlags +{ + EnableKeyboard = 1 << 0, // Master keyboard navigation enable flag. NewFrame() will automatically fill io.NavInputs[] based on io.KeyDown[]. + EnableGamepad = 1 << 1, // Master gamepad navigation enable flag. This is mostly to instruct your imgui back-end to fill io.NavInputs[]. + MoveMouse = 1 << 2, // Request navigation to allow moving the mouse cursor. May be useful on TV/console systems where moving a virtual mouse is awkward. Will update io.MousePos and set io.WantMoveMouse=true. If enabled you MUST honor io.WantMoveMouse requests in your binding, otherwise ImGui will react as if the mouse is jumping around back and forth. + NoCaptureKeyboard = 1 << 3 // Do not set the io.WantCaptureKeyboard flag with io.NavActive is set. +} + // Enumeration for PushStyleColor() / PopStyleColor() export const enum ImGuiCol { Text, @@ -234,6 +287,8 @@ TextSelectedBg, ModalWindowDarkening, // darken entire screen when a modal window is active DragDropTarget, + NavHighlight, // gamepad/keyboard: current highlighted item + NavWindowingHighlight, // gamepad/keyboard: when holding NavMenu to focus/move/resize windows COUNT } @@ -247,6 +302,7 @@ WindowRounding, // float WindowRounding WindowBorderSize, // float WindowBorderSize WindowMinSize, // ImVec2 WindowMinSize + WindowTitleAlign, // ImVec2 WindowTitleAlign ChildRounding, // float ChildRounding ChildBorderSize, // float ChildBorderSize PopupRounding, // float PopupRounding @@ -257,7 +313,10 @@ ItemSpacing, // ImVec2 ItemSpacing ItemInnerSpacing, // ImVec2 ItemInnerSpacing IndentSpacing, // float IndentSpacing + ScrollbarSize, // float ScrollbarSize + ScrollbarRounding, // float ScrollbarRounding GrabMinSize, // float GrabMinSize + GrabRounding, // float GrabRounding ButtonTextAlign, // ImVec2 ButtonTextAlign Count_, COUNT = Count_ } @@ -436,11 +495,11 @@ public HasSelection(): boolean; } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData extends emscripten.EmscriptenClass +export class ImGuiSizeCallbackData extends emscripten.EmscriptenClass { // void* UserData; // Read-only. What user passed to SetNextWindowSizeConstraints() public UserData: any; @@ -475,46 +534,48 @@ public End(): void; } +// You may modify the ImGui::GetStyle() main instance during initialization and before NewFrame(). +// During the frame, prefer using ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/PopStyleVar() to alter the main style values, and ImGui::PushStyleColor(ImGuiCol_XXX)/PopStyleColor() for colors. export interface interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui + // float Alpha; // Global alpha applies to everything in ImGui. Alpha: number; - // ImVec2 WindowPadding; // Padding within a window + // ImVec2 WindowPadding; // Padding within a window. getWindowPadding(): interface_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows + // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows. WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size + // ImVec2 WindowMinSize; // Minimum window size. This is a global setting. If you want to constraint individual windows, use SetNextWindowSizeConstraints(). getWindowMinSize(): interface_ImVec2; // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): interface_ImVec2; // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). ChildBorderSize: number; // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) + // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets). getFramePadding(): interface_ImVec2; // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) + // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly). FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines + // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines. getItemSpacing(): interface_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label). getItemInnerSpacing(): interface_ImVec2; // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): interface_ImVec2; // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns + // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns. ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar + // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar. ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar + // float ScrollbarRounding; // Radius of grab corners for scrollbar. ScrollbarRounding: number; // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; @@ -526,6 +587,8 @@ getDisplayWindowPadding(): interface_ImVec2; // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): interface_ImVec2; + // float MouseCursorScale; // Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later. + MouseCursorScale: number; // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. AntiAliasedLines: boolean; // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) @@ -542,68 +605,38 @@ } export class ImGuiStyle extends emscripten.EmscriptenClass implements interface_ImGuiStyle { - // float Alpha; // Global alpha applies to everything in ImGui Alpha: number; - // ImVec2 WindowPadding; // Padding within a window getWindowPadding(): reference_ImVec2; - // float WindowRounding; // Radius of window corners rounding. Set to 0.0f to have rectangular windows WindowRounding: number; - // float WindowBorderSize; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) WindowBorderSize: number; - // ImVec2 WindowMinSize; // Minimum window size getWindowMinSize(): reference_ImVec2; - // ImVec2 WindowTitleAlign; // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. getWindowTitleAlign(): reference_ImVec2; - // float ChildRounding; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. ChildRounding: number; - // float ChildBorderSize; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) ChildBorderSize: number; - // float PopupRounding; // Radius of popup window corners rounding. PopupRounding: number; - // float PopupBorderSize; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) PopupBorderSize: number; - // ImVec2 FramePadding; // Padding within a framed rectangle (used by most widgets) getFramePadding(): reference_ImVec2; - // float FrameRounding; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). FrameRounding: number; - // float FrameBorderSize; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) FrameBorderSize: number; - // ImVec2 ItemSpacing; // Horizontal and vertical spacing between widgets/lines getItemSpacing(): reference_ImVec2; - // ImVec2 ItemInnerSpacing; // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) getItemInnerSpacing(): reference_ImVec2; - // ImVec2 TouchExtraPadding; // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! getTouchExtraPadding(): reference_ImVec2; - // float IndentSpacing; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). IndentSpacing: number; - // float ColumnsMinSpacing; // Minimum horizontal spacing between two columns ColumnsMinSpacing: number; - // float ScrollbarSize; // Width of the vertical scrollbar, Height of the horizontal scrollbar ScrollbarSize: number; - // float ScrollbarRounding; // Radius of grab corners for scrollbar ScrollbarRounding: number; - // float GrabMinSize; // Minimum width/height of a grab box for slider/scrollbar. GrabMinSize: number; - // float GrabRounding; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. GrabRounding: number; - // ImVec2 ButtonTextAlign; // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. getButtonTextAlign(): reference_ImVec2; - // ImVec2 DisplayWindowPadding; // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. getDisplayWindowPadding(): reference_ImVec2; - // ImVec2 DisplaySafeAreaPadding; // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. getDisplaySafeAreaPadding(): reference_ImVec2; - // bool AntiAliasedLines; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. + MouseCursorScale: number; AntiAliasedLines: boolean; - // bool AntiAliasedFill; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) AntiAliasedFill: boolean; - // float CurveTessellationTol; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. CurveTessellationTol: number; - // ImVec4 Colors[ImGuiCol_COUNT]; getColorsAt(idx: number): reference_ImVec4; setColorsAt(idx: number, value: Readonly): boolean; - // IMGUI_API ImGuiStyle(); - // IMGUI_API void ScaleAllSizes(float scale_factor); public ScaleAllSizes(scale_factor: number): void; } @@ -650,6 +683,7 @@ // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) + // If you want to create ImDrawList instances, pass them ImGui::GetDrawListSharedData() or create and use your own ImDrawListSharedData (so you can use ImDrawList without ImGui) // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -748,10 +782,10 @@ public readonly TotalIdxCount: number; // Functions - // ImDrawData() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } + // ImDrawData() { Clear(); } + // void Clear() { Valid = false; CmdLists = NULL; CmdListsCount = TotalVtxCount = TotalIdxCount = 0; } // Draw lists are owned by the ImGuiContext and only pointed to here. // IMGUI_API void DeIndexAllBuffers(); // For backward compatibility or convenience: convert all buffers from indexed to de-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering! // IMGUI_API void ScaleClipRects(const ImVec2& sc); // Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than ImGui expects, or if there is a difference between your window resolution and framebuffer resolution. - // public ScaleClipRects(sc: Readonly): void; public ScaleClipRects(sc: Readonly): void; } @@ -803,6 +837,12 @@ // #endif } +export enum ImFontAtlasFlags +{ + NoPowerOfTwoHeight = 1 << 0, // Don't round the height to next power of two + NoMouseCursors = 1 << 1 // Don't build software mouse cursors into the atlas +} + export class reference_ImFontAtlas extends emscripten.EmscriptenClassReference { // IMGUI_API ImFontAtlas(); // IMGUI_API ~ImFontAtlas(); @@ -873,13 +913,17 @@ // IMGUI_API int AddCustomRectRegular(unsigned int id, int width, int height); // Id needs to be >= 0x10000. Id >= 0x80000000 are reserved for ImGui and ImDrawList // IMGUI_API int AddCustomRectFontGlyph(ImFont* font, ImWchar id, int width, int height, float advance_x, const ImVec2& offset = ImVec2(0,0)); // Id needs to be < 0x10000 to register a rectangle to map into a specific font. - // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); // const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0) return NULL; return &CustomRects[index]; } + // Internals + // IMGUI_API void CalcCustomRectUV(const CustomRect* rect, ImVec2* out_uv_min, ImVec2* out_uv_max); + // IMGUI_API bool GetMouseCursorTexData(ImGuiMouseCursor cursor, ImVec2* out_offset, ImVec2* out_size, ImVec2 out_uv_border[2], ImVec2 out_uv_fill[2]); + // //------------------------------------------- // Members // //------------------------------------------- + // ImFontAtlasFlags Flags; // Build flags (see ImFontAtlasFlags_) // ImTextureID TexID; // User data to refer to the texture once it has been uploaded to user's graphic systems. It is passed back to you during rendering via the ImDrawCmd structure. getTexID(): WebGLTexture | null; setTexID(value: WebGLTexture | null): void; @@ -894,6 +938,7 @@ readonly TexWidth: number; // int TexHeight; // Texture height calculated during Build(). readonly TexHeight: number; + // ImVec2 TexUvScale; // = (1.0f/TexWidth, 1.0f/TexHeight) // ImVec2 TexUvWhitePixel; // Texture coordinates to a white pixel // ImVector Fonts; // Hold all the fonts returned by AddFont*. Fonts[0] is the default font upon calling ImGui::NewFrame(), use ImGui::PushFont()/PopFont() to change the current font. // ImVector CustomRects; // Rectangles for packing custom texture data into the atlas. @@ -913,10 +958,12 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + public NavFlags: ImGuiNavFlags; // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. - // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging - // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array + // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging. + // int KeyMap[ImGuiKey_COUNT]; // // Map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. public getKeyMapAt(index: ImGuiKey): number; public setKeyMapAt(index: ImGuiKey, value: number): boolean; // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). @@ -953,11 +1000,6 @@ // void (*SetClipboardTextFn)(void* user_data, const char* text); // void* ClipboardUserData; - // Optional: override memory allocations. MemFreeFn() may be called with a NULL pointer. - // (default to posix malloc/free) - // void* (*MemAllocFn)(size_t sz); - // void (*MemFreeFn)(void* ptr); - // Optional: notify OS Input Method Editor of the screen position of your cursor for text input position (e.g. when using Japanese/Chinese IME in Windows) // (default to use native imm32 api on Windows) // void (*ImeSetInputScreenPosFn)(int x, int y); @@ -967,27 +1009,32 @@ // Input - Fill before calling NewFrame() //------------------------------------------------------------------ - // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) + // ImVec2 MousePos; // Mouse position, in pixels. Set to ImVec2(-FLT_MAX,-FLT_MAX) if mouse is unavailable (on another screen, etc.) public getMousePos(): reference_ImVec2; - // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. + // bool MouseDown[5]; // Mouse buttons: left, right, middle + extras. ImGui itself mostly only uses left button (BeginPopupContext** are using right button). Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. public getMouseDownAt(index: number): boolean; public setMouseDownAt(index: number, value: boolean): boolean; - // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. + // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public MouseWheel: number; - // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public MouseWheelH: number; + // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). public MouseDrawCursor: boolean; - // bool KeyCtrl; // Keyboard modifier pressed: Control + // bool KeyCtrl; // Keyboard modifier pressed: Control public KeyCtrl: boolean; - // bool KeyShift; // Keyboard modifier pressed: Shift + // bool KeyShift; // Keyboard modifier pressed: Shift public KeyShift: boolean; - // bool KeyAlt; // Keyboard modifier pressed: Alt + // bool KeyAlt; // Keyboard modifier pressed: Alt public KeyAlt: boolean; - // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows + // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows public KeySuper: boolean; - // bool KeysDown[512]; // Keyboard keys that are pressed (in whatever storage order you naturally have access to keyboard data) + // bool KeysDown[512]; // Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). public getKeysDownAt(index: number): boolean; public setKeysDownAt(index: number, value: boolean): boolean; - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public getNavInputsAt(index: number): number; + public setNavInputsAt(index: number, value: number): boolean; // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] @@ -1005,11 +1052,14 @@ public WantCaptureKeyboard: boolean; // bool WantTextInput; // Mobile/console: when io.WantTextInput is true, you may display an on-screen keyboard. This is set by ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). public WantTextInput: boolean; - // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. + // bool WantMoveMouse; // MousePos has been altered, back-end should reposition mouse on next frame. Set only when ImGuiNavFlags_MoveMouse flag is enabled in io.NavFlags. public WantMoveMouse: boolean; + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + public NavActive: boolean; + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + public NavVisible: boolean; // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames public Framerate: number; - // int MetricsAllocs; // Number of active memory allocations // int MetricsRenderVertices; // Vertices output during last call to Render() // int MetricsRenderIndices; // Indices output during last call to Render() = number of triangles * 3 // int MetricsActiveWindows; // Number of visible root windows (exclude child windows) @@ -1022,6 +1072,7 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + public getMouseClickedPosAt(index: number): Readonly; // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1035,10 +1086,25 @@ // float KeysDownDuration[512]; // Duration the keyboard key has been down (0.0f == just pressed) public getKeysDownDurationAt(index: number): number; // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public getNavInputsDownDurationAt(index: number): number; + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(): ImGuiContext | null; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: ImGuiContext | null): void; +// IMGUI_API ImGuiContext* GetCurrentContext(); +export function GetCurrentContext(): ImGuiContext | null; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export function SetCurrentContext(ctx: ImGuiContext | null): void; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): reference_ImGuiIO; @@ -1052,8 +1118,6 @@ export function Render(): void; // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void; -// IMGUI_API void Shutdown(); -export function Shutdown(): void; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1068,6 +1132,16 @@ export function ShowFontSelector(label: string): void; // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void; +// IMGUI_API const char* GetVersion(); +export function GetVersion(): string; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; // Window export function Begin(name: string, p_open: [ boolean ] | null /* = NULL */, flags: ImGuiWindowFlags/* = 0 */): boolean; @@ -1095,6 +1169,7 @@ export function SetNextWindowContentSize(size: Readonly): void; export function SetNextWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; export function SetNextWindowFocus(): void; +export function SetNextWindowBgAlpha(alpha: number): void; export function SetWindowPos(pos: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowSize(size: Readonly, cond: ImGuiCond/* = 0 */): void; export function SetWindowCollapsed(collapsed: boolean, cond: ImGuiCond/* = 0 */): void; @@ -1412,14 +1487,6 @@ // IMGUI_API void PopClipRect(); export function PopClipRect(): void; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null/* = NULL */): void; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null/* = NULL */): void; - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -1433,6 +1500,8 @@ export function IsItemHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export function IsItemActive(): boolean; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export function IsItemFocused(): boolean; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number/* = 0 */): boolean; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) @@ -1441,6 +1510,8 @@ export function IsAnyItemHovered(): boolean; // IMGUI_API bool IsAnyItemActive(); export function IsAnyItemActive(): boolean; +// IMGUI_API bool IsAnyItemFocused(); +export function IsAnyItemFocused(): boolean; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 GetItemRectMax(); // " @@ -1453,10 +1524,6 @@ export function IsWindowFocused(flags: ImGuiFocusedFlags/* = 0 */): boolean; // IMGUI_API bool IsWindowHovered(ImGuiHoveredFlags flags = 0); // is current window hovered (and typically: not blocked by a popup/modal)? see flags for options. export function IsWindowHovered(flags: ImGuiHoveredFlags/* = 0 */): boolean; -// IMGUI_API bool IsAnyWindowFocused(); -export function IsAnyWindowFocused(): boolean; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export function IsAnyWindowHovered(): boolean; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean; @@ -1470,16 +1537,14 @@ export function GetDrawListSharedData(): reference_ImDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export function GetStyleColorName(idx: ImGuiCol): string; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean/* = false */, outward: number/* = +0.0f */, out: interface_ImVec2): typeof out; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null/* = NULL */, hide_text_after_double_hash: boolean/* = false */, wrap_width: number/* = -1.0f */, out: interface_ImVec2): typeof out; // IMGUI_API void CalcListClipping(int items_count, float items_height, int* out_items_display_start, int* out_items_display_end); // calculate coarse clipping for large list of evenly sized items. Prefer using the ImGuiListClipper higher-level helper if you can. export function CalcListClipping(items_count: number, items_height: number, out_items_display_start: ImScalar, out_items_display_end: ImScalar): void; -// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags extra_flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame +// IMGUI_API bool BeginChildFrame(ImGuiID id, const ImVec2& size, ImGuiWindowFlags flags = 0); // helper to create a child window / scrolling region that looks like a normal widget frame export function BeginChildFrame(id: ImGuiID, size: Readonly, extra_flags: ImGuiWindowFlags/* = 0 */): boolean; -// IMGUI_API void EndChildFrame(); +// IMGUI_API void EndChildFrame(); // always call EndChildFrame() regardless of BeginChildFrame() return values (which indicates a collapsed/clipped window) export function EndChildFrame(): void; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); @@ -1504,6 +1569,8 @@ export function GetKeyPressedAmount(key_index: number, repeat_delay: number, rate: number): number; // IMGUI_API bool IsMouseDown(int button); // is mouse button held export function IsMouseDown(button: number): boolean; +// IMGUI_API bool IsAnyMouseDown(); // is any mouse button held +export function IsAnyMouseDown(): boolean; // IMGUI_API bool IsMouseClicked(int button, bool repeat = false); // did mouse button clicked (went from !Down to Down) export function IsMouseClicked(button: number, repeat: boolean/* = false */): boolean; // IMGUI_API bool IsMouseDoubleClicked(int button); // did mouse button double-clicked. a double-click returns false in IsMouseClicked(). uses io.MouseDoubleClickTime. @@ -1542,17 +1609,3 @@ export function GetClipboardText(): string; // IMGUI_API void SetClipboardText(const char* text); export function SetClipboardText(text: string): void; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export function GetVersion(): string; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null, free_fn: ((ptr: any) => void) | null): ImGuiContext | null; -export function CreateContext(): ImGuiContext | null; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -export function DestroyContext(ctx: ImGuiContext | null): void; -// IMGUI_API ImGuiContext* GetCurrentContext(); -export function GetCurrentContext(): ImGuiContext | null; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export function SetCurrentContext(ctx: ImGuiContext | null): void; diff --git a/bind-imgui.js b/bind-imgui.js index 8b18a22..42298b9 100644 --- a/bind-imgui.js +++ b/bind-imgui.js @@ -1,20 +1,21 @@ -var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+59664;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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QAAAAJgDAACQAwAAYAMAAJADAACQAwAAYAMAACAAAACQAwAAYAMAAGADAABgAwAAIAAAAJADAABgAwAAIAAAACAAAABAAAAAYAMAAGADAAAgAAAAYAMAAEADAAAgAAAAQAAAAJADAABgAwAAQAAAAJADAAAgAAAAYAMAAEAAAAAgAAAAYAMAACAAAABAAAAAkAMAAEAAAABgAwAAIAAAAEAAAABAAAAAkAMAAJADAAAgAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAACAAAABgAwAAIAAAAEAAAACwAwAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAIAAAALADAABgAwAAIAAAAEAAAACQAwAAkAMAAJADAABgAwAAIAAAAEAAAACQAwAAkAMAAGADAAAgAAAAQAAAALADAACwAwAAkAMAAJADAABgAwAAIAAAAEAAAACYAwAAQAAAAJADAABAAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAkAMAAEAAAABAAAAAYAMAACAAAABAAAAAQAAAALADAACwAwAAsAMAACAAAABAAAAAYAMAACAAAABAAAAAsAMAAJADAACQAwAAIAAAAGADAAAgAAAAQAAAAEAAAACwAwAAsAMAALADAAAgAAAAQAAAALADAABgAwAAIAAAAEAAAACwAwAAsAMAALADAAAgAAAAsAMAAGADAAAgAAAAQAAAALADAACwAwAAsAMAAEAAAACwAwAAYAMAACAAAABAAAAAQAAAAJADAACQAwAAQAMAALADAABAAAAAQAAAAEAAAABAAAAAQAMAACAAAABAAAAAQAAAAJADAACQAwAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAQAAAAEAAAABgAwAAIAAAAEAAAACYAwAAmAMAAGADAABAAAAAQAAAAEAAAABAAAAAkAMAAEAAAABAAAAAQAMAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAGADAAAgAAAAYAMAACAAAABAAAAAQAMAACAAAAAgAAAAQAMAAEAAAAAgAAAAmAMAAEAAAABAAwAAkAMAALADAACwAwAAkAMAAEADAACQAwAAQAAAAGADAABAAwAAUAAAAEADAABgAwAAmAMAAEAAAABAAAAAQAAAAJADAABAAwAAkAMAAEADAACQAwAAQAAAAEAAAABAAwAAsAMAALADAABAAwAAIAAAAGADAACQAwAAQAMAACAAAABAAAAAkAMAAEADAABgAwAAkAMAAEADAABAAAAAQAAAAEAAAABAAAAAQAMAAEAAAACQAwAAQAMAAEAAAACQAwAAQAAAAEADAACwAwAAQAAAAEAAAABgAwAAQAAAAEAAAABgAwAAkAMAAGADAAAgAAAAQAAAAJADAABAAwAAIAAAAIgAAABAAwAAQAAAAEADAABAAwAAiAAAALADAABgAwAAiAAAAJADAABAAAAAQAAAAIgAAACQAwAAQAAAAIgAAACwAwAAWAEAAJADAABAAwAAEAEAAIgDAABgAwAAEAEAAJADAABgAwAAYAMAAFgBAACQAwAAYAMAABABAACQAwAAkAMAAJADAABYAQAAkAMAAEAAAAAQAQAAQAMAAGgBAABAAAAAQAAAAIABAABAAAAAeAEAACAAAADIAAAAQAMAAPgAAABAAAAAQAMAAKgBAABAAAAAQAMAAIAAAABAAAAAQAAAAEAAAABAAAAAmAMAALADAACQAwAAQAMAAIAAAABAAAAAsAMAAEAAAACYAwAAIAAAAEAAAACwAwAAQAAAALgAAABAAwAAgAAAAEAAAACYAwAAIAAAAEAAAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAABAAwAAgAAAAEAAAACwAwAAmAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAQAMAAIAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAABAAAAAQAAAAJgDAABAAwAAgAAAAEAAAABAAAAAQAAAAEAAAACYAwAAsAMAAEADAACAAAAAQAAAAEAAAACYAwAAmAMAAJgDAACYAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAkAMAAEADAACAAAAAQAAAAEAAAACYAwAAsAMAAJADAACwAwAAQAMAAIAAAABAAAAAQAAAAJgDAACwAwAAQAMAAHAAAABAAwAAgAAAAEAAAABAAAAAYAMAAEADAAC4AQAAQAAAAEAAAADQAQAAQAMAAPgBAABAAwAA+AEAAJADAACwAwAAYAMAAPgBAAD4AQAAkAMAALADAAD4AQAAkAMAAPgBAABAAAAA8AAAAOAAAABgAwAA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KSAmJiAiRm9udCBBdGxhcyBub3QgY3JlYXRlZC4gRGlkIHlvdSBjYWxsIGlvLkZvbnRzLT5HZXRUZXhEYXRhQXNSR0JBMzIgLyBHZXRUZXhEYXRhQXNBbHBoYTggPyIAZy5TdHlsZS5DdXJ2ZVRlc3NlbGxhdGlvblRvbCA+IDAuMGYgJiYgIkludmFsaWQgc3R5bGUgc2V0dGluZyIAZy5TdHlsZS5BbHBoYSA+PSAwLjBmICYmIGcuU3R5bGUuQWxwaGEgPD0gMS4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nLiBBbHBoYSBjYW5ub3QgYmUgbmVnYXRpdmUgKGFsbG93cyB1cyB0byBhdm9pZCBhIGZldyBjbGFtcHMgaW4gY29sb3IgY29tcHV0YXRpb25zKSIAKGcuRnJhbWVDb3VudCA9PSAwIHx8IGcuRnJhbWVDb3VudEVuZGVkID09IGcuRnJhbWVDb3VudCkgJiYgIkZvcmdvdCB0byBjYWxsIFJlbmRlcigpIG9yIEVuZEZyYW1lKCkgYXQgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMgZnJhbWU/IgBnLkZvbnQtPklzTG9hZGVkKCkAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAZy5Nb3ZpbmdXaW5kb3ctPk1vdmVJZCA9PSBnLk1vdmluZ1dpbmRvd01vdmVJZABEZWJ1ZyMjRGVmYXVsdABXaW5kb3cAZy5TZXR0aW5nc1dpbmRvd3MuZW1wdHkoKQBJbml0aWFsaXplAGcuSW5pdGlhbGl6ZWQAZy5DdXJyZW50V2luZG93U3RhY2suU2l6ZSA9PSAxAGcuV2luZG93cy5TaXplID09IGcuV2luZG93c1NvcnRCdWZmZXIuU2l6ZQBSZW5kZXJUcmlhbmdsZQBpbWd1aV9rZXkgPj0gMCAmJiBpbWd1aV9rZXkgPCBJbUd1aUtleV9DT1VOVAB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihHSW1HdWktPklPLktleXNEb3duKS9zaXplb2YoKkdJbUd1aS0+SU8uS2V5c0Rvd24pKSkAa2V5X2luZGV4ID49IDAgJiYga2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAdXNlcl9rZXlfaW5kZXggPj0gMCAmJiB1c2VyX2tleV9pbmRleCA8ICgoaW50KShzaXplb2YoZy5JTy5LZXlzRG93bikvc2l6ZW9mKCpnLklPLktleXNEb3duKSkpAGJ1dHRvbiA+PSAwICYmIGJ1dHRvbiA8ICgoaW50KShzaXplb2YoZy5JTy5Nb3VzZURvd24pL3NpemVvZigqZy5JTy5Nb3VzZURvd24pKSkAIyNUb29sdGlwXyUwMmQAR2V0Q3VycmVudFdpbmRvd1JlYWQoKS0+RmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX1Rvb2x0aXAAIyNNZW51cwAjI01lbnVfJTAyZAAjI1BvcHVwXyUwOHgAZy5DdXJyZW50V2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXAAZy5DdXJyZW50UG9wdXBTdGFjay5TaXplID4gMABpZCAhPSAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABwYXJlbnRfd2luZG93ICE9IDBMIHx8ICEoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX0NoaWxkV2luZG93KQB3aW5kb3dfc2l6ZV94X3NldF9ieV9hcGkgJiYgd2luZG93X3NpemVfeV9zZXRfYnlfYXBpAHdpbmRvd19wb3Nfc2V0X2J5X2FwaQAjUkVTSVpFACNDTE9TRQAoZmxhZ3MgJiBJbUd1aVdpbmRvd0ZsYWdzX05vVGl0bGVCYXIpICE9IDAAI1NDUk9MTFgAI1NDUk9MTFkASW1NYXgod2luX3NpemVfY29udGVudHNfdiwgd2luX3NpemVfYXZhaWxfdikgPiAwLjBmAFNjcm9sbGJhcgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQAKGZsYWdzICYgSW1HdWlIb3ZlcmVkRmxhZ3NfQWxsb3dXaGVuT3ZlcmxhcHBlZCkgPT0gMABnLkN1cnJlbnRXaW5kb3cAY2VudGVyX3lfcmF0aW8gPj0gMC4wZiAmJiBjZW50ZXJfeV9yYXRpbyA8PSAxLjBmAG9mZnNldCA+PSAtMQB0ZXh0ICE9IDBMACNpbWFnZQBhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfTWVudUJhcgB3aW5kb3ctPkRDLk1lbnVCYXJBcHBlbmRpbmcAIyNwcmV2aWV3ACMlMDJYJTAyWCUwMlgKUjogJWQsIEc6ICVkLCBCOiAlZAooJS4zZiwgJS4zZiwgJS4zZikAIyUwMlglMDJYJTAyWCUwMlgKUjolZCwgRzolZCwgQjolZCwgQTolZAooJS4zZiwgJS4zZiwgJS4zZiwgJS4zZikASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19JbnB1dHNNYXNrKSkASW1Jc1Bvd2VyT2ZUd28oKGludCkoZmxhZ3MgJiBJbUd1aUNvbG9yRWRpdEZsYWdzX19EYXRhVHlwZU1hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX1BpY2tlck1hc2spKQBfQ09MM0YAX0NPTDRGAENvbG9yAGNvbnRleHQAUkdCAEhTVgBIRVgAMC4uMjU1ADAuMDAuLjEuMDAAQ29weSBhcy4uACglLjNmZiwgJS4zZmYsICUuM2ZmLCAlLjNmZikAKCVkLCVkLCVkLCVkKQAweCUwMlglMDJYJTAyWAAweCUwMlglMDJYJTAyWCUwMlgATTowLjAwMABNOjAwMAAjI1gAIyNZACMjWgAjI1cAJTMuMGYAUjolMy4wZgBHOiUzLjBmAEI6JTMuMGYAQTolMy4wZgBIOiUzLjBmAFM6JTMuMGYAVjolMy4wZgAlMC4zZgBSOiUwLjNmAEc6JTAuM2YAQjolMC4zZgBBOiUwLjNmAEg6JTAuM2YAUzolMC4zZgBWOiUwLjNmACMlMDJYJTAyWCUwMlglMDJYACMlMDJYJTAyWCUwMlgAIyNUZXh0ACUwMlglMDJYJTAyWCUwMlgAJTAyWCUwMlglMDJYACMjQ29sb3JCdXR0b24AcGlja2VyACMjcGlja2VyAGhzdgBzdgBodWUAYWxwaGEAQ3VycmVudAAjI2N1cnJlbnQAT3JpZ2luYWwAIyNvcmlnaW5hbAAjI3JnYgAjI2hzdgAjI2hleABJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIChJbUd1aVNlcGFyYXRvckZsYWdzX0hvcml6b250YWwgfCBJbUd1aVNlcGFyYXRvckZsYWdzX1ZlcnRpY2FsKSkpAAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAgfAAhd2luZG93LT5EQy5Hcm91cFN0YWNrLmVtcHR5KCkAY29sdW1ucyAhPSAwTABjb2x1bW5faW5kZXggPCBjb2x1bW5zLT5Db2x1bW5zLlNpemUAY29sdW1uc19jb3VudCA+IDEAQmVnaW5Db2x1bW5zAHdpbmRvdy0+REMuQ29sdW1uc1NldCA9PSAwTABjb2x1bW5zAGNvbHVtbnMtPklEID09IGlkAGNvbHVtbnMtPkNvbHVtbnMuU2l6ZSA9PSBjb2x1bW5zX2NvdW50ICsgMQBFbmRDb2x1bW5zAGNvbHVtbnNfY291bnQgPj0gMQAjVHJlZVB1c2gAJXM6ICVzAHRydWUAZmFsc2UAJSVzOiAlcwAlczogJS4zZgAjU291cmNlRXh0ZXJuAHNvdXJjZV9pZCAhPSAwAGcuRHJhZ0Ryb3BBY3RpdmUAdHlwZSAhPSAwTABzdHJsZW4odHlwZSkgPCAoKGludCkoc2l6ZW9mKHBheWxvYWQuRGF0YVR5cGUpL3NpemVvZigqcGF5bG9hZC5EYXRhVHlwZSkpKQAoZGF0YSAhPSAwTCAmJiBkYXRhX3NpemUgPiAwKSB8fCAoZGF0YSA9PSAwTCAmJiBkYXRhX3NpemUgPT0gMCkAY29uZCA9PSBJbUd1aUNvbmRfQWx3YXlzIHx8IGNvbmQgPT0gSW1HdWlDb25kX09uY2UAcGF5bG9hZC5Tb3VyY2VJZCAhPSAwAHBheWxvYWQuRGF0YUZyYW1lQ291bnQgIT0gLTEASW1HdWkgTWV0cmljcwBJbUd1aSAlcwBBcHBsaWNhdGlvbiBhdmVyYWdlICUuM2YgbXMvZnJhbWUgKCUuMWYgRlBTKQAlZCB2ZXJ0aWNlcywgJWQgaW5kaWNlcyAoJWQgdHJpYW5nbGVzKQAlZCBhbGxvY2F0aW9ucwABU2hvdyBjbGlwcGluZyByZWN0YW5nbGVzIHdoZW4gaG92ZXJpbmcgYW4gSW1EcmF3Q21kAFdpbmRvd3MARHJhd0xpc3QAQWN0aXZlIERyYXdMaXN0cyAoJWQpAFBvcHVwcwBPcGVuIFBvcHVwcyBTdGFjayAoJWQpAFBvcHVwSUQ6ICUwOHgsIFdpbmRvdzogJyVzJyVzJXMATlVMTAAgQ2hpbGRXaW5kb3cAIENoaWxkTWVudQBCYXNpYyBzdGF0ZQBIb3ZlcmVkV2luZG93OiAnJXMnAEhvdmVyZWRSb290V2luZG93OiAnJXMnAEhvdmVyZWRJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpAEFjdGl2ZUlkOiAweCUwOFgvMHglMDhYICglLjJmIHNlYykAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnACMjT3ZlcmxheQBQb3M9JWYsJWYAU2l6ZT0lZiwlZgBDb2xsYXBzZWQ9JWQAIyMjAFtXaW5kb3ddWyVzXQoAUG9zPSVkLCVkCgBTaXplPSVkLCVkCgBDb2xsYXBzZWQ9JWQKAHJiAHd0AGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9WdHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBBZGREcmF3TGlzdFRvUmVuZGVyTGlzdABkcmF3X2xpc3QtPklkeEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fSWR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5JZHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUAKGludClkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4ID09IGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAZHJhd19saXN0LT5fVnR4Q3VycmVudElkeCA8ICgxIDw8IDE2KSAmJiAiVG9vIG1hbnkgdmVydGljZXMgaW4gSW1EcmF3TGlzdCB1c2luZyAxNi1iaXQgaW5kaWNlcy4gUmVhZCBjb21tZW50IGFib3ZlIgAKJSpzJS4qcwAgJS4qcwAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VJbmFjdGl2ZVBvcHVwcwAlcy8lc18lMDhYACVzLyUwOFgAaXQgPj0gRGF0YSAmJiBpdCA8PSBEYXRhK1NpemUAaW5zZXJ0ACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoSUQvUG9wSUQgb3IgVHJlZU5vZGUvVHJlZVBvcCBNaXNtYXRjaCEiAENoZWNrU3RhY2tzU2l6ZQAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiQmVnaW5Hcm91cC9FbmRHcm91cCBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbk1lbnUvRW5kTWVudSBvciBCZWdpblBvcHVwL0VuZFBvcHVwIE1pc21hdGNoIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaFN0eWxlQ29sb3IvUG9wU3R5bGVDb2xvciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVWYXIvUG9wU3R5bGVWYXIgTWlzbWF0Y2ghIgAqcF9iYWNrdXAgPT0gY3VycmVudCAmJiAiUHVzaEZvbnQvUG9wRm9udCBNaXNtYXRjaCEiAEdldEJvcmRlclJlY3QAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBpZHggPj0gMCAmJiBpZHggPCBJbUd1aVN0eWxlVmFyX0NvdW50XwBHZXRTdHlsZVZhckluZm8AJS4qZAAlLipmAHBvcyA8PSB0ZXh0X2xlbgBTVEJfVEVYVEVESVRfSU5TRVJUQ0hBUlMASXRlbXNDb3VudCA9PSAtMQB+SW1HdWlMaXN0Q2xpcHBlcgAjI3NlbGVjdGFibGUAIyNkdW1teXBpY2tlcgBBbHBoYSBCYXIAY29sdW1uX2luZGV4ID4gMABHZXREcmFnZ2VkQ29sdW1uT2Zmc2V0AGcuQWN0aXZlSWQgPT0gY29sdW1ucy0+SUQgKyBJbUd1aUlEKGNvbHVtbl9pbmRleCkAJXMgKCVkKQAlcyAnJXMnLCAlZCBAIDB4JXAAUG9zOiAoJS4xZiwlLjFmKSwgU2l6ZTogKCUuMWYsJS4xZiksIFNpemVDb250ZW50cyAoJS4xZiwlLjFmKQBTY3JvbGw6ICglLjJmLyUuMmYsJS4yZi8lLjJmKQBBY3RpdmU6ICVkLCBXcml0ZUFjY2Vzc2VkOiAlZABSb290V2luZG93AENoaWxkV2luZG93cwBTdG9yYWdlOiAlZCBieXRlcwAlczogJyVzJyAlZCB2dHgsICVkIGluZGljZXMsICVkIGNtZHMAQ1VSUkVOVExZIEFQUEVORElORwBDYWxsYmFjayAlcCwgdXNlcl9kYXRhICVwAERyYXcgJS00ZCAlcyB2dHgsIHRleCA9ICVwLCBjbGlwX3JlY3QgPSAoJS4wZiwlLjBmKS4uKCUuMGYsJS4wZikAaW5kZXhlZABub24taW5kZXhlZAAlcyAlMDRkIHsgcG9zID0gKCU4LjJmLCU4LjJmKSwgdXYgPSAoJS42ZiwlLjZmKSwgY29sID0gJTA4WCB9CgB2dHgAICAgAGl0ID49IERhdGEgJiYgaXQgPCBEYXRhK1NpemUAZXJhc2UAaSA8IFNpemUAb3BlcmF0b3JbXQBkcmF3X2NtZC5DbGlwUmVjdC54IDw9IGRyYXdfY21kLkNsaXBSZWN0LnogJiYgZHJhd19jbWQuQ2xpcFJlY3QueSA8PSBkcmF3X2NtZC5DbGlwUmVjdC53AGltZ3VpL2ltZ3VpX2RyYXcuY3BwAEFkZERyYXdDbWQAX0NsaXBSZWN0U3RhY2suU2l6ZSA+IDAAcG9wX2JhY2sAX1RleHR1cmVJZFN0YWNrLlNpemUgPiAwAFBvcFRleHR1cmVJRABfQ2hhbm5lbHNDdXJyZW50ID09IDAgJiYgX0NoYW5uZWxzQ291bnQgPT0gMQBDaGFubmVsc1NwbGl0AGJhY2sAaWR4IDwgX0NoYW5uZWxzQ291bnQAQ2hhbm5lbHNTZXRDdXJyZW50AGZvbnQtPkNvbnRhaW5lckF0bGFzLT5UZXhJRCA9PSBfVGV4dHVyZUlkU3RhY2suYmFjaygpAGF0bGFzLT5Db25maWdEYXRhLlNpemUgPiAwAEltRm9udEF0bGFzQnVpbGRXaXRoU3RiVHJ1ZXR5cGUAY2ZnLkRzdEZvbnQgJiYgKCFjZmcuRHN0Rm9udC0+SXNMb2FkZWQoKSB8fCBjZmcuRHN0Rm9udC0+Q29udGFpbmVyQXRsYXMgPT0gYXRsYXMpAGZvbnRfb2Zmc2V0ID49IDAAbiA9PSBmb250X2dseXBoc19jb3VudABidWZfcmVjdHNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3BhY2tlZGNoYXJzX24gPT0gdG90YWxfZ2x5cGhzX2NvdW50AGJ1Zl9yYW5nZXNfbiA9PSB0b3RhbF9yYW5nZXNfY291bnQAci5Gb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcwBJbUZvbnRBdGxhc0J1aWxkRmluaXNoAEdseXBocy5TaXplIDwgMHhGRkZGAEJ1aWxkTG9va3VwVGFibGUASW5kZXhBZHZhbmNlWC5TaXplID09IEluZGV4TG9va3VwLlNpemUAR3Jvd0luZGV4AFRleFdpZHRoID4gMCAmJiBUZXhIZWlnaHQgPiAwAENhbGNDdXN0b21SZWN0VVYAcmVjdC0+SXNQYWNrZWQoKQBhdGxhcy0+Q3VzdG9tUmVjdElkc1swXSA+PSAwAEltRm9udEF0bGFzQnVpbGRSZW5kZXJEZWZhdWx0VGV4RGF0YQByLklEID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9JRAByLldpZHRoID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9XX0hBTEYqMisxAHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAHIuSXNQYWNrZWQoKQBhdGxhcy0+VGV4UGl4ZWxzQWxwaGE4ICE9IDBMAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIABwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaAAxLjUzAElNR1VJX1ZFUlNJT04ASW1EcmF3VmVydFNpemUASW1EcmF3SWR4U2l6ZQBJbURyYXdWZXJ0UG9zT2Zmc2V0AEltRHJhd1ZlcnRVVk9mZnNldABJbURyYXdWZXJ0Q29sT2Zmc2V0AEdldElPAEdldFN0eWxlAEdldERyYXdEYXRhAE5ld0ZyYW1lAFJlbmRlcgBFbmRGcmFtZQBTaHV0ZG93bgBTaG93RGVtb1dpbmRvdwBTaG93TWV0cmljc1dpbmRvdwBTaG93U3R5bGVFZGl0b3IAU2hvd1N0eWxlU2VsZWN0b3IAU2hvd0ZvbnRTZWxlY3RvcgBTaG93VXNlckd1aWRlAEJlZ2luAEVuZABCZWdpbkNoaWxkAEVuZENoaWxkAEdldENvbnRlbnRSZWdpb25NYXgAR2V0Q29udGVudFJlZ2lvbkF2YWlsAEdldENvbnRlbnRSZWdpb25BdmFpbFdpZHRoAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NaW4AR2V0V2luZG93Q29udGVudFJlZ2lvbk1heABHZXRXaW5kb3dDb250ZW50UmVnaW9uV2lkdGgAR2V0V2luZG93RHJhd0xpc3QAR2V0V2luZG93UG9zAEdldFdpbmRvd1NpemUAR2V0V2luZG93V2lkdGgAR2V0V2luZG93SGVpZ2h0AElzV2luZG93Q29sbGFwc2VkAElzV2luZG93QXBwZWFyaW5nAFNldFdpbmRvd0ZvbnRTY2FsZQBTZXROZXh0V2luZG93UG9zAFNldE5leHRXaW5kb3dTaXplAFNldE5leHRXaW5kb3dTaXplQ29uc3RyYWludHMAU2V0TmV4dFdpbmRvd0NvbnRlbnRTaXplAFNldE5leHRXaW5kb3dDb2xsYXBzZWQAU2V0TmV4dFdpbmRvd0ZvY3VzAFNldFdpbmRvd1BvcwBTZXRXaW5kb3dTaXplAFNldFdpbmRvd0NvbGxhcHNlZABTZXRXaW5kb3dGb2N1cwBTZXRXaW5kb3dOYW1lUG9zAFNldFdpbmRvd05hbWVTaXplAFNldFdpbmRvd05hbWVDb2xsYXBzZWQAU2V0V2luZG93TmFtZUZvY3VzAEdldFNjcm9sbFgAR2V0U2Nyb2xsWQBHZXRTY3JvbGxNYXhYAEdldFNjcm9sbE1heFkAU2V0U2Nyb2xsWABTZXRTY3JvbGxZAFNldFNjcm9sbEhlcmUAU2V0U2Nyb2xsRnJvbVBvc1kAU2V0U3RhdGVTdG9yYWdlAEdldFN0YXRlU3RvcmFnZQBQdXNoRm9udABQb3BGb250AFB1c2hTdHlsZUNvbG9yAFBvcFN0eWxlQ29sb3IAUHVzaFN0eWxlVmFyAFBvcFN0eWxlVmFyAEdldFN0eWxlQ29sb3JWZWM0AEdldEZvbnQAR2V0Rm9udFNpemUAR2V0Rm9udFRleFV2V2hpdGVQaXhlbABHZXRDb2xvclUzMgBQdXNoSXRlbVdpZHRoAFBvcEl0ZW1XaWR0aABDYWxjSXRlbVdpZHRoAFB1c2hUZXh0V3JhcFBvcwBQb3BUZXh0V3JhcFBvcwBQdXNoQWxsb3dLZXlib2FyZEZvY3VzAFBvcEFsbG93S2V5Ym9hcmRGb2N1cwBQdXNoQnV0dG9uUmVwZWF0AFBvcEJ1dHRvblJlcGVhdABTZXBhcmF0b3IAU2FtZUxpbmUATmV3TGluZQBTcGFjaW5nAER1bW15AEluZGVudABVbmluZGVudABCZWdpbkdyb3VwAEVuZEdyb3VwAEdldEN1cnNvclBvcwBHZXRDdXJzb3JQb3NYAEdldEN1cnNvclBvc1kAU2V0Q3Vyc29yUG9zAFNldEN1cnNvclBvc1gAU2V0Q3Vyc29yUG9zWQBHZXRDdXJzb3JTdGFydFBvcwBHZXRDdXJzb3JTY3JlZW5Qb3MAU2V0Q3Vyc29yU2NyZWVuUG9zAEFsaWduVGV4dFRvRnJhbWVQYWRkaW5nAEdldFRleHRMaW5lSGVpZ2h0AEdldFRleHRMaW5lSGVpZ2h0V2l0aFNwYWNpbmcAR2V0RnJhbWVIZWlnaHQAR2V0RnJhbWVIZWlnaHRXaXRoU3BhY2luZwBDb2x1bW5zAE5leHRDb2x1bW4AR2V0Q29sdW1uSW5kZXgAR2V0Q29sdW1uV2lkdGgAU2V0Q29sdW1uV2lkdGgAR2V0Q29sdW1uT2Zmc2V0AFNldENvbHVtbk9mZnNldABHZXRDb2x1bW5zQ291bnQAUHVzaElEAFBvcElEAEdldElEAFRleHRVbmZvcm1hdHRlZABUZXh0AFRleHRWAFRleHRDb2xvcmVkAFRleHRDb2xvcmVkVgBUZXh0RGlzYWJsZWQAVGV4dERpc2FibGVkVgBUZXh0V3JhcHBlZABUZXh0V3JhcHBlZFYATGFiZWxUZXh0AExhYmVsVGV4dFYAQnVsbGV0VGV4dABCdWxsZXRUZXh0VgBCdWxsZXQAQnV0dG9uAFNtYWxsQnV0dG9uAEludmlzaWJsZUJ1dHRvbgBJbWFnZQBJbWFnZUJ1dHRvbgBDaGVja2JveABDaGVja2JveEZsYWdzAFJhZGlvQnV0dG9uAFBsb3RMaW5lcwBQbG90SGlzdG9ncmFtAFByb2dyZXNzQmFyAEJlZ2luQ29tYm8ARW5kQ29tYm8AQ29tYm8ARHJhZ0Zsb2F0AERyYWdGbG9hdDIARHJhZ0Zsb2F0MwBEcmFnRmxvYXQ0AERyYWdGbG9hdFJhbmdlMgBEcmFnSW50AERyYWdJbnQyAERyYWdJbnQzAERyYWdJbnQ0AERyYWdJbnRSYW5nZTIASW5wdXRUZXh0AElucHV0VGV4dE11bHRpbGluZQBJbnB1dEZsb2F0AElucHV0RmxvYXQyAElucHV0RmxvYXQzAElucHV0RmxvYXQ0AElucHV0SW50AElucHV0SW50MgBJbnB1dEludDMASW5wdXRJbnQ0AFNsaWRlckZsb2F0AFNsaWRlckZsb2F0MgBTbGlkZXJGbG9hdDMAU2xpZGVyRmxvYXQ0AFNsaWRlckFuZ2xlAFNsaWRlckludABTbGlkZXJJbnQyAFNsaWRlckludDMAU2xpZGVySW50NABWU2xpZGVyRmxvYXQAVlNsaWRlckludABDb2xvckVkaXQzAENvbG9yRWRpdDQAQ29sb3JQaWNrZXIzAENvbG9yUGlja2VyNABDb2xvckJ1dHRvbgBTZXRDb2xvckVkaXRPcHRpb25zAFRyZWVOb2RlAFRyZWVOb2RlRXgAVHJlZVB1c2gAVHJlZVBvcABUcmVlQWR2YW5jZVRvTGFiZWxQb3MAR2V0VHJlZU5vZGVUb0xhYmVsU3BhY2luZwBTZXROZXh0VHJlZU5vZGVPcGVuAENvbGxhcHNpbmdIZWFkZXIAU2VsZWN0YWJsZQBMaXN0Qm94AExpc3RCb3hIZWFkZXIATGlzdEJveEZvb3RlcgBWYWx1ZQBTZXRUb29sdGlwAEJlZ2luVG9vbHRpcABFbmRUb29sdGlwAEJlZ2luTWFpbk1lbnVCYXIARW5kTWFpbk1lbnVCYXIAQmVnaW5NZW51QmFyAEVuZE1lbnVCYXIAQmVnaW5NZW51AEVuZE1lbnUATWVudUl0ZW0AT3BlblBvcHVwAE9wZW5Qb3B1cE9uSXRlbUNsaWNrAEJlZ2luUG9wdXAAQmVnaW5Qb3B1cE1vZGFsAEJlZ2luUG9wdXBDb250ZXh0SXRlbQBCZWdpblBvcHVwQ29udGV4dFdpbmRvdwBCZWdpblBvcHVwQ29udGV4dFZvaWQARW5kUG9wdXAASXNQb3B1cE9wZW4AQ2xvc2VDdXJyZW50UG9wdXAATG9nVG9UVFkATG9nVG9GaWxlAExvZ1RvQ2xpcGJvYXJkAExvZ0ZpbmlzaABMb2dCdXR0b25zAExvZ1RleHQAQmVnaW5EcmFnRHJvcFNvdXJjZQBTZXREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BTb3VyY2UAQmVnaW5EcmFnRHJvcFRhcmdldABBY2NlcHREcmFnRHJvcFBheWxvYWQARW5kRHJhZ0Ryb3BUYXJnZXQAUHVzaENsaXBSZWN0AFBvcENsaXBSZWN0AFN0eWxlQ29sb3JzQ2xhc3NpYwBTdHlsZUNvbG9yc0RhcmsAU3R5bGVDb2xvcnNMaWdodABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUNsaWNrZWQASXNJdGVtVmlzaWJsZQBJc0FueUl0ZW1Ib3ZlcmVkAElzQW55SXRlbUFjdGl2ZQBHZXRJdGVtUmVjdE1pbgBHZXRJdGVtUmVjdE1heABHZXRJdGVtUmVjdFNpemUAU2V0SXRlbUFsbG93T3ZlcmxhcABJc1dpbmRvd0ZvY3VzZWQASXNXaW5kb3dIb3ZlcmVkAElzQW55V2luZG93Rm9jdXNlZABJc0FueVdpbmRvd0hvdmVyZWQASXNSZWN0VmlzaWJsZQBHZXRUaW1lAEdldEZyYW1lQ291bnQAR2V0T3ZlcmxheURyYXdMaXN0AEdldERyYXdMaXN0U2hhcmVkRGF0YQBHZXRTdHlsZUNvbG9yTmFtZQBDYWxjSXRlbVJlY3RDbG9zZXN0UG9pbnQAQ2FsY1RleHRTaXplAENhbGNMaXN0Q2xpcHBpbmcAQmVnaW5DaGlsZEZyYW1lAEVuZENoaWxkRnJhbWUAQ29sb3JDb252ZXJ0VTMyVG9GbG9hdDQAQ29sb3JDb252ZXJ0RmxvYXQ0VG9VMzIAQ29sb3JDb252ZXJ0UkdCdG9IU1YAQ29sb3JDb252ZXJ0SFNWdG9SR0IAR2V0S2V5SW5kZXgASXNLZXlEb3duAElzS2V5UHJlc3NlZABJc0tleVJlbGVhc2VkAEdldEtleVByZXNzZWRBbW91bnQASXNNb3VzZURvd24ASXNNb3VzZUNsaWNrZWQASXNNb3VzZURvdWJsZUNsaWNrZWQASXNNb3VzZVJlbGVhc2VkAElzTW91c2VEcmFnZ2luZwBJc01vdXNlSG92ZXJpbmdSZWN0AElzTW91c2VQb3NWYWxpZABHZXRNb3VzZVBvcwBHZXRNb3VzZVBvc09uT3BlbmluZ0N1cnJlbnRQb3B1cABHZXRNb3VzZURyYWdEZWx0YQBSZXNldE1vdXNlRHJhZ0RlbHRhAEdldE1vdXNlQ3Vyc29yAFNldE1vdXNlQ3Vyc29yAENhcHR1cmVLZXlib2FyZEZyb21BcHAAQ2FwdHVyZU1vdXNlRnJvbUFwcABNZW1BbGxvYwBNZW1GcmVlAEdldENsaXBib2FyZFRleHQAU2V0Q2xpcGJvYXJkVGV4dABHZXRWZXJzaW9uAENyZWF0ZUNvbnRleHQARGVzdHJveUNvbnRleHQAR2V0Q3VycmVudENvbnRleHQAU2V0Q3VycmVudENvbnRleHQAUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAaWkAaWlpAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWlmaQB4AHkAaWlpaWkAaWlpZgBpaWlmZgBpaWlpAHZpZmZmaWlpADZJbVZlYzQAegB3ADZJbVZlYzIAdmlpZmlpAGlpaWlpZmkAaWlpaWZpAFAyMEltRHJhd0xpc3RTaGFyZWREYXRhADIwSW1EcmF3TGlzdFNoYXJlZERhdGEAUDEwSW1EcmF3TGlzdAAxMEltRHJhd0xpc3QAdmlpAFAxMEltR3VpU3R5bGUAMTBJbUd1aVN0eWxlAHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBQNkltRm9udAA2SW1Gb250AFBLNkltVmVjNABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoKSBjb25zdABhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoZW1zY3JpcHRlbjo6dmFsKSBjb25zdAB2aWZmAHZpaWlpaQBQMzFJbUd1aVNpemVDb25zdHJhaW50Q2FsbGJhY2tEYXRhADMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQB2aWYAZmkAdmkAUDEwSW1EcmF3RGF0YQAxMEltRHJhd0RhdGEAUDdJbUd1aUlPADdJbUd1aUlPAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAEFudGlBbGlhc2VkTGluZXMAQW50aUFsaWFzZWRGaWxsAEN1cnZlVGVzc2VsbGF0aW9uVG9sAGdldENvbG9yc0F0AHNldENvbG9yc0F0AFNjYWxlQWxsU2l6ZXMAUDZJbVZlYzQAUDZJbVZlYzIAdgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZmlpaQBQSzdJbUd1aUlPAFAxMUltRm9udEF0bGFzADExSW1Gb250QXRsYXMASW1Gb250QXRsYXMAR2V0VGV4RGF0YUFzUkdCQTMyAGdldFRleElEAHNldFRleElEAFRleFdpZHRoAFRleEhlaWdodABQSzExSW1Gb250QXRsYXMAcGl4ZWxzAHdpZHRoAGhlaWdodABOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUASW1Gb250AEdldERlYnVnTmFtZQA8dW5rbm93bj4AUEs2SW1Gb250AEltRHJhd0RhdGEASXRlcmF0ZURyYXdMaXN0cwBWYWxpZABDbWRMaXN0c0NvdW50AFRvdGFsVnR4Q291bnQAVG90YWxJZHhDb3VudABTY2FsZUNsaXBSZWN0cwBQSzEwSW1EcmF3RGF0YQBQSzEwSW1EcmF3TGlzdABJbURyYXdMaXN0AEl0ZXJhdGVEcmF3Q21kcwBJZHhCdWZmZXIAVnR4QnVmZmVyAFB1c2hDbGlwUmVjdEZ1bGxTY3JlZW4AQWRkTGluZQBBZGRSZWN0AEFkZFJlY3RGaWxsZWQAQWRkUmVjdEZpbGxlZE11bHRpQ29sb3IAQWRkUXVhZABBZGRRdWFkRmlsbGVkAEFkZFRyaWFuZ2xlAEFkZFRyaWFuZ2xlRmlsbGVkAEFkZENpcmNsZQBBZGRDaXJjbGVGaWxsZWQAQWRkVGV4dABBZGRUZXh0X0ZvbnQAQWRkQmV6aWVyQ3VydmUAdmlpaWlpaWlmaQB2aWlpZmlpaWlmaQB2aWlpZmlpAHZpaWlmaWlmAHZpaWlpaWkAdmlpaWlpaWYAdmlpaWlpaWlmAHZpaWlpaWlpaQB2aWlpaWlmaQB2aWlpaWlmaWYAdmlpaWlpZgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAU2l6ZSA+IDAAaW1ndWkvaW1ndWkuaABmcm9udABQSzlJbURyYXdDbWQAOUltRHJhd0NtZABJbURyYXdDbWQARWxlbUNvdW50AGdldENsaXBSZWN0AFRleHR1cmVJZABQOUltRHJhd0NtZABJbUd1aUxpc3RDbGlwcGVyAFN0YXJ0UG9zWQBJdGVtc0hlaWdodABJdGVtc0NvdW50AFN0ZXBObwBEaXNwbGF5U3RhcnQARGlzcGxheUVuZABTdGVwAFAxNkltR3VpTGlzdENsaXBwZXIAMTZJbUd1aUxpc3RDbGlwcGVyAHZpaWlmAFBLMTZJbUd1aUxpc3RDbGlwcGVyAEltR3VpU2l6ZUNvbnN0cmFpbnRDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLNkltVmVjMgBQSzMxSW1HdWlTaXplQ29uc3RyYWludENhbGxiYWNrRGF0YQBJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEV2ZW50RmxhZwBGbGFncwBSZWFkT25seQBFdmVudENoYXIARXZlbnRLZXkAZ2V0QnVmAHNldEJ1ZgBCdWZUZXh0TGVuAEJ1ZlNpemUAQnVmRGlydHkAQ3Vyc29yUG9zAFNlbGVjdGlvblN0YXJ0AFNlbGVjdGlvbkVuZABEZWxldGVDaGFycwBJbnNlcnRDaGFycwBIYXNTZWxlY3Rpb24AUEsyNUltR3VpVGV4dEVkaXRDYWxsYmFja0RhdGEASW1WZWM0AENvcHkARXF1YWxzAGlpZmZmZgBJbVZlYzIAaWlmZgBtYWxsaW5mbwBhcmVuYQBvcmRibGtzAHNtYmxrcwBoYmxrcwBoYmxraGQAdXNtYmxrcwBmc21ibGtzAHVvcmRibGtzAGZvcmRibGtzAGtlZXBjb3N0AHZvaWQAYm9vbABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQBkb3VibGUAZmxvYXQAdW5zaWduZWQgbG9uZwBsb25nAHVuc2lnbmVkIGludABpbnQAdW5zaWduZWQgc2hvcnQAc2hvcnQAdW5zaWduZWQgY2hhcgBzaWduZWQgY2hhcgBjaGFyAP////////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAECBAcDBgUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgByd2EAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYAUHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}Module["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"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["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){Module["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}}}Module["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)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}Module["setWindowTitle"]=(function(title){document.title=title})}Module["print"]=typeof console!=="undefined"?console.log:typeof print!=="undefined"?print:null;Module["printErr"]=typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn||Module["print"];Module.print=Module["print"];Module.printErr=Module["printErr"];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){assert(!staticSealed);var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;Module.printErr(text)}}var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:staticAlloc,stackAlloc,staticAlloc,dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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 addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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 Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_max=Math.max;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;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"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+47200;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_bind_imgui_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="data:application/octet-stream;base64,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KAAAACgAAADAAwAAMAAAACgAAADAAwAAKAAAAIgDAADAAwAAOAAAALgDAABoAwAAuAMAANgDAAAoAAAAKAAAACgAAAAIAAAAKAAAAIgDAADYAwAAKAAAAAgAAAC4AwAAiAMAACgAAAAoAAAAiAMAALgDAABoAwAAKAAAACgAAACIAwAAKAAAAAgAAAC4AwAAiAMAAAgAAAAoAAAAwAMAALgDAACIAwAAuAMAALgDAACIAwAACAAAALgDAACIAwAAiAMAAIgDAAAIAAAAuAMAAIgDAAAIAAAACAAAACgAAACIAwAAiAMAAAgAAACIAwAAaAMAAAgAAAAoAAAAuAMAAIgDAAAoAAAAuAMAAAgAAACIAwAAKAAAAAgAAACIAwAACAAAACgAAAC4AwAAKAAAAIgDAAAIAAAAKAAAACgAAAC4AwAAuAMAAAgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAACAAAAIgDAAAIAAAAKAAAANgDAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAAAIAAAA2AMAAIgDAAAIAAAAKAAAALgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAALgDAAC4AwAAiAMAAAgAAAAoAAAA2AMAANgDAAC4AwAAuAMAAIgDAAAIAAAAKAAAAMADAAAoAAAAuAMAACgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAAC4AwAAKAAAACgAAACIAwAACAAAACgAAAAoAAAA2AMAANgDAADYAwAACAAAACgAAACIAwAACAAAACgAAADYAwAAuAMAALgDAAAIAAAAiAMAAAgAAAAoAAAAKAAAANgDAADYAwAA2AMAAAgAAAAoAAAA2AMAAIgDAAAIAAAAKAAAANgDAADYAwAA2AMAAAgAAADYAwAAiAMAAAgAAAAoAAAA2AMAANgDAADYAwAAKAAAANgDAACIAwAACAAAACgAAAAoAAAAuAMAALgDAABoAwAA2AMAACgAAAAoAAAAKAAAACgAAABoAwAACAAAACgAAAAoAAAAuAMAALgDAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAAAoAAAAKAAAAIgDAAAIAAAAKAAAAMADAADAAwAAiAMAACgAAAAoAAAAKAAAACgAAAC4AwAAKAAAACgAAABoAwAAKAAAACgAAAAoAAAAKAAAACgAAAAoAAAAiAMAAAgAAACIAwAACAAAACgAAABoAwAACAAAAAgAAABoAwAAKAAAAAgAAADAAwAAKAAAAGgDAAC4AwAA2AMAANgDAAC4AwAAaAMAALgDAAAoAAAAiAMAAGgDAAA4AAAAaAMAAIgDAADAAwAAKAAAACgAAAAoAAAAuAMAAGgDAAC4AwAAaAMAALgDAAAoAAAAKAAAAGgDAADYAwAA2AMAAGgDAAAIAAAAiAMAALgDAABoAwAACAAAACgAAAC4AwAAaAMAAIgDAAC4AwAAaAMAACgAAAAoAAAAKAAAACgAAABoAwAAKAAAALgDAABoAwAAKAAAALgDAAAoAAAAaAMAANgDAAAoAAAAKAAAAIgDAAAoAAAAKAAAAIgDAAC4AwAAiAMAAAgAAAAoAAAAuAMAAGgDAADIAAAAaAMAAAgAAADIAAAAaAMAABABAABoAwAAKAAAAGgDAADIAAAA2AMAAIgDAADIAAAAuAMAACgAAAAoAAAAyAAAALgDAAAoAAAAyAAAACgAAACAAQAAuAMAAGgDAAD4AAAAsAMAAIgDAAD4AAAAuAMAANgDAADYAwAAgAEAALgDAACIAwAA+AAAALgDAACIAwAAiAMAAIABAAC4AwAAiAMAAPgAAAC4AwAAuAMAALgDAACAAQAAuAMAACgAAAD4AAAAaAMAAKABAAAoAAAAKAAAALgBAAAoAAAAsAEAAAgAAACYAAAAaAMAAOAAAAAoAAAAaAMAAOABAAAoAAAAaAMAAGgAAAAoAAAAKAAAACgAAAAoAAAAwAMAANgDAAC4AwAAaAMAAGgAAAAoAAAA2AMAACgAAADAAwAACAAAACgAAADYAwAAKAAAAIgAAABoAwAAaAAAACgAAADAAwAACAAAACgAAABoAwAAaAAAACgAAADYAwAAwAMAALgDAABoAwAAaAAAACgAAADYAwAAwAMAALgDAADYAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAAaAMAAGgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAAAoAAAAKAAAAMADAABoAwAAaAAAACgAAAAoAAAAKAAAACgAAADAAwAA2AMAAGgDAABoAAAAKAAAACgAAADAAwAAwAMAAMADAADAAwAAaAMAAGgAAAAoAAAA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ZG93AGcuSU8uRGVsdGFUaW1lID49IDAuMGYgJiYgIk5lZWQgYSBwb3NpdGl2ZSBEZWx0YVRpbWUgKHplcm8gaXMgdG9sZXJhdGVkIGJ1dCB3aWxsIGNhdXNlIHNvbWUgdGltaW5nIGlzc3VlcykiAGcuSU8uRGlzcGxheVNpemUueCA+PSAwLjBmICYmIGcuSU8uRGlzcGxheVNpemUueSA+PSAwLjBmICYmICJJbnZhbGlkIERpc3BsYXlTaXplIHZhbHVlIgBnLklPLkZvbnRzLT5Gb250cy5TaXplID4gMCAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLklPLkZvbnRzLT5Gb250c1swXS0+SXNMb2FkZWQoKSAmJiAiRm9udCBBdGxhcyBub3QgYnVpbHQuIERpZCB5b3UgY2FsbCBpby5Gb250cy0+R2V0VGV4RGF0YUFzUkdCQTMyKCkgLyBHZXRUZXhEYXRhQXNBbHBoYTgoKSA/IgBnLlN0eWxlLkN1cnZlVGVzc2VsbGF0aW9uVG9sID4gMC4wZiAmJiAiSW52YWxpZCBzdHlsZSBzZXR0aW5nIgBnLlN0eWxlLkFscGhhID49IDAuMGYgJiYgZy5TdHlsZS5BbHBoYSA8PSAxLjBmICYmICJJbnZhbGlkIHN0eWxlIHNldHRpbmcuIEFscGhhIGNhbm5vdCBiZSBuZWdhdGl2ZSAoYWxsb3dzIHVzIHRvIGF2b2lkIGEgZmV3IGNsYW1wcyBpbiBjb2xvciBjb21wdXRhdGlvbnMpIgAoZy5GcmFtZUNvdW50ID09IDAgfHwgZy5GcmFtZUNvdW50RW5kZWQgPT0gZy5GcmFtZUNvdW50KSAmJiAiRm9yZ290IHRvIGNhbGwgUmVuZGVyKCkgb3IgRW5kRnJhbWUoKSBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2aW91cyBmcmFtZT8iAGcuSU8uS2V5TWFwW25dID49IC0xICYmIGcuSU8uS2V5TWFwW25dIDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkgJiYgImlvLktleU1hcFtdIGNvbnRhaW5zIGFuIG91dCBvZiBib3VuZCB2YWx1ZSAobmVlZCB0byBiZSAwLi41MTIsIG9yIC0xIGZvciB1bm1hcHBlZCBrZXkpIgBnLklPLktleU1hcFtJbUd1aUtleV9TcGFjZV0gIT0gLTEgJiYgIkltR3VpS2V5X1NwYWNlIGlzIG5vdCBtYXBwZWQsIHJlcXVpcmVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uLiIAZy5Gb250LT5Jc0xvYWRlZCgpAERlYnVnIyNEZWZhdWx0AFdpbmRvdwBnLlNldHRpbmdzV2luZG93cy5lbXB0eSgpAEluaXRpYWxpemUAZy5Jbml0aWFsaXplZABnLkN1cnJlbnRXaW5kb3dTdGFjay5TaXplID09IDEAZy5XaW5kb3dzLlNpemUgPT0gZy5XaW5kb3dzU29ydEJ1ZmZlci5TaXplAFJlbmRlclRyaWFuZ2xlAGltZ3VpX2tleSA+PSAwICYmIGltZ3VpX2tleSA8IEltR3VpS2V5X0NPVU5UAHVzZXJfa2V5X2luZGV4ID49IDAgJiYgdXNlcl9rZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKEdJbUd1aS0+SU8uS2V5c0Rvd24pL3NpemVvZigqR0ltR3VpLT5JTy5LZXlzRG93bikpKQBrZXlfaW5kZXggPj0gMCAmJiBrZXlfaW5kZXggPCAoKGludCkoc2l6ZW9mKGcuSU8uS2V5c0Rvd24pL3NpemVvZigqZy5JTy5LZXlzRG93bikpKQB1c2VyX2tleV9pbmRleCA+PSAwICYmIHVzZXJfa2V5X2luZGV4IDwgKChpbnQpKHNpemVvZihnLklPLktleXNEb3duKS9zaXplb2YoKmcuSU8uS2V5c0Rvd24pKSkAYnV0dG9uID49IDAgJiYgYnV0dG9uIDwgKChpbnQpKHNpemVvZihnLklPLk1vdXNlRG93bikvc2l6ZW9mKCpnLklPLk1vdXNlRG93bikpKQAjI1Rvb2x0aXBfJTAyZABHZXRDdXJyZW50V2luZG93UmVhZCgpLT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfVG9vbHRpcAAocG9wdXAuV2luZG93LT5GbGFncyAmIEltR3VpV2luZG93RmxhZ3NfUG9wdXApICE9IDAAQ2xvc2VQb3B1cHNPdmVyV2luZG93ACMjTWVudV8lMDJkACMjUG9wdXBfJTA4eABnLkN1cnJlbnRXaW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Qb3B1cABnLkN1cnJlbnRQb3B1cFN0YWNrLlNpemUgPiAwAHdpbmRvd19jb250ZXh0AHZvaWRfY29udGV4dAB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdwBuYW1lICE9IDBMAGcuRnJhbWVDb3VudEVuZGVkICE9IGcuRnJhbWVDb3VudABmbGFncyAmIEltR3VpV2luZG93RmxhZ3NfQ2hpbGRXaW5kb3cAcGFyZW50X3dpbmRvdyAhPSAwTCB8fCAhKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19DaGlsZFdpbmRvdykAd2luZG93X3Bvc19zZXRfYnlfYXBpACNDT0xMQVBTRQAjQ0xPU0UAKGZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19Ob1RpdGxlQmFyKSAhPSAwACNTQ1JPTExYACNTQ1JPTExZAEltTWF4KHdpbl9zaXplX2NvbnRlbnRzX3YsIHdpbl9zaXplX2F2YWlsX3YpID4gMC4wZgBTY3JvbGxiYXIAZm9udCAmJiBmb250LT5Jc0xvYWRlZCgpAFNldEN1cnJlbnRGb250AGZvbnQtPlNjYWxlID4gMC4wZgBXaW5kb3dCZwBDaGlsZEJnAFBvcHVwQmcAQm9yZGVyAEJvcmRlclNoYWRvdwBGcmFtZUJnAEZyYW1lQmdIb3ZlcmVkAEZyYW1lQmdBY3RpdmUAVGl0bGVCZwBUaXRsZUJnQWN0aXZlAFRpdGxlQmdDb2xsYXBzZWQATWVudUJhckJnAFNjcm9sbGJhckJnAFNjcm9sbGJhckdyYWIAU2Nyb2xsYmFyR3JhYkhvdmVyZWQAU2Nyb2xsYmFyR3JhYkFjdGl2ZQBDaGVja01hcmsAU2xpZGVyR3JhYgBTbGlkZXJHcmFiQWN0aXZlAEJ1dHRvbkhvdmVyZWQAQnV0dG9uQWN0aXZlAEhlYWRlcgBIZWFkZXJIb3ZlcmVkAEhlYWRlckFjdGl2ZQBTZXBhcmF0b3JIb3ZlcmVkAFNlcGFyYXRvckFjdGl2ZQBSZXNpemVHcmlwAFJlc2l6ZUdyaXBIb3ZlcmVkAFJlc2l6ZUdyaXBBY3RpdmUAQ2xvc2VCdXR0b24AQ2xvc2VCdXR0b25Ib3ZlcmVkAENsb3NlQnV0dG9uQWN0aXZlAFBsb3RMaW5lc0hvdmVyZWQAUGxvdEhpc3RvZ3JhbUhvdmVyZWQAVGV4dFNlbGVjdGVkQmcATW9kYWxXaW5kb3dEYXJrZW5pbmcARHJhZ0Ryb3BUYXJnZXQATmF2SGlnaGxpZ2h0AE5hdldpbmRvd2luZ0hpZ2hsaWdodAAoZmxhZ3MgJiBJbUd1aUhvdmVyZWRGbGFnc19BbGxvd1doZW5PdmVybGFwcGVkKSA9PSAwAGcuQ3VycmVudFdpbmRvdwBjZW50ZXJfeV9yYXRpbyA+PSAwLjBmICYmIGNlbnRlcl95X3JhdGlvIDw9IDEuMGYAb2Zmc2V0ID49IC0xAHRleHQgIT0gMEwAI2ltYWdlAGcuTG9nRmlsZSA9PSAwTABhYgBnLkxvZ0ZpbGUgIT0gMEwACgBMb2cgVG8gVFRZAExvZyBUbyBGaWxlAExvZyBUbyBDbGlwYm9hcmQARGVwdGgACiMjACMjAD4AZy5BY3RpdmVJZCA9PSBpZABJbnB1dFNjYWxhckFzV2lkZ2V0UmVwbGFjZW1lbnQAJS4zZgAlLjBmIGRlZwAlLjBmACMjdgAjI21pbgAjI21heAB2X2lkeCA+PSAwICYmIHZfaWR4IDwgdmFsdWVzX2NvdW50AFBsb3RFeAAlZDogJTguNGcKJWQ6ICU4LjRnACVkOiAlOC40ZwB2MV9pZHggPj0gMCAmJiB2MV9pZHggPCB2YWx1ZXNfY291bnQAJS4wZiUlAFt4XQBbIF0AKHgpACggKQBwb3MgKyBieXRlc19jb3VudCA8PSBCdWZUZXh0TGVuACEoKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19DYWxsYmFja0hpc3RvcnkpICYmIChmbGFncyAmIEltR3VpSW5wdXRUZXh0RmxhZ3NfTXVsdGlsaW5lKSkASW5wdXRUZXh0RXgAISgoZmxhZ3MgJiBJbUd1aUlucHV0VGV4dEZsYWdzX0NhbGxiYWNrQ29tcGxldGlvbikgJiYgKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19BbGxvd1RhYklucHV0KSkAcGFzc3dvcmRfZm9udC0+R2x5cGhzLmVtcHR5KCkgJiYgcGFzc3dvcmRfZm9udC0+SW5kZXhBZHZhbmNlWC5lbXB0eSgpICYmIHBhc3N3b3JkX2ZvbnQtPkluZGV4TG9va3VwLmVtcHR5KCkAY2FsbGJhY2sgIT0gMEwAY2FsbGJhY2tfZGF0YS5CdWYgPT0gZWRpdF9zdGF0ZS5UZW1wVGV4dEJ1ZmZlci5EYXRhAGNhbGxiYWNrX2RhdGEuQnVmU2l6ZSA9PSBlZGl0X3N0YXRlLkJ1ZlNpemVBAGNhbGxiYWNrX2RhdGEuRmxhZ3MgPT0gZmxhZ3MAY2FsbGJhY2tfZGF0YS5CdWZUZXh0TGVuID09IChpbnQpc3RybGVuKGNhbGxiYWNrX2RhdGEuQnVmKQAhKGZsYWdzICYgSW1HdWlJbnB1dFRleHRGbGFnc19NdWx0aWxpbmUpAC0AKwAlZgAlJS4lZGYAJTA4WAAlZABJbUlzUG93ZXJPZlR3byhmbGFncyAmIEltR3VpQ29tYm9GbGFnc19IZWlnaHRNYXNrXykAIyNDb21ib18lMDJkACpVbmtub3duIGl0ZW0qACMjTWFpbk1lbnVCYXIAIXdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI21lbnViYXIAd2luZG93LT5EQy5OYXZMYXllckFjdGl2ZU1hc2tOZXh0ICYgMHgwMgB3aW5kb3ctPkZsYWdzICYgSW1HdWlXaW5kb3dGbGFnc19NZW51QmFyAHdpbmRvdy0+REMuTWVudUJhckFwcGVuZGluZwAjI3ByZXZpZXcAIyUwMlglMDJYJTAyWApSOiAlZCwgRzogJWQsIEI6ICVkCiglLjNmLCAlLjNmLCAlLjNmKQAjJTAyWCUwMlglMDJYJTAyWApSOiVkLCBHOiVkLCBCOiVkLCBBOiVkCiglLjNmLCAlLjNmLCAlLjNmLCAlLjNmKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0lucHV0c01hc2spKQBJbUlzUG93ZXJPZlR3bygoaW50KShmbGFncyAmIEltR3VpQ29sb3JFZGl0RmxhZ3NfX0RhdGFUeXBlTWFzaykpAEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgSW1HdWlDb2xvckVkaXRGbGFnc19fUGlja2VyTWFzaykpAF9DT0wzRgBfQ09MNEYAQ29sb3IAY29udGV4dABSR0IASFNWAEhFWAAwLi4yNTUAMC4wMC4uMS4wMABDb3B5IGFzLi4AKCUuM2ZmLCAlLjNmZiwgJS4zZmYsICUuM2ZmKQAoJWQsJWQsJWQsJWQpADB4JTAyWCUwMlglMDJYADB4JTAyWCUwMlglMDJYJTAyWABNOjAuMDAwAE06MDAwACMjWAAjI1kAIyNaACMjVwAlMy4wZgBSOiUzLjBmAEc6JTMuMGYAQjolMy4wZgBBOiUzLjBmAEg6JTMuMGYAUzolMy4wZgBWOiUzLjBmACUwLjNmAFI6JTAuM2YARzolMC4zZgBCOiUwLjNmAEE6JTAuM2YASDolMC4zZgBTOiUwLjNmAFY6JTAuM2YAIyUwMlglMDJYJTAyWCUwMlgAIyUwMlglMDJYJTAyWAAjI1RleHQAJTAyWCUwMlglMDJYJTAyWAAlMDJYJTAyWCUwMlgAIyNDb2xvckJ1dHRvbgBwaWNrZXIAIyNwaWNrZXIAaHN2AHN2AGh1ZQBhbHBoYQBDdXJyZW50ACMjY3VycmVudABPcmlnaW5hbAAjI29yaWdpbmFsACMjcmdiACMjaHN2ACMjaGV4AEltSXNQb3dlck9mVHdvKChpbnQpKGZsYWdzICYgKEltR3VpU2VwYXJhdG9yRmxhZ3NfSG9yaXpvbnRhbCB8IEltR3VpU2VwYXJhdG9yRmxhZ3NfVmVydGljYWwpKSkACi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACB8ACF3aW5kb3ctPkRDLkdyb3VwU3RhY2suZW1wdHkoKQBjb2x1bW5zICE9IDBMAGNvbHVtbl9pbmRleCA8IGNvbHVtbnMtPkNvbHVtbnMuU2l6ZQBjb2x1bW5zX2NvdW50ID4gMQBCZWdpbkNvbHVtbnMAd2luZG93LT5EQy5Db2x1bW5zU2V0ID09IDBMAGNvbHVtbnMAY29sdW1ucy0+SUQgPT0gaWQARW5kQ29sdW1ucwBjb2x1bW5zX2NvdW50ID49IDEAI1RyZWVQdXNoACVzOiAlcwB0cnVlAGZhbHNlACUlczogJXMAJXM6ICUuM2YAI1NvdXJjZUV4dGVybgBzb3VyY2VfaWQgIT0gMABnLkRyYWdEcm9wQWN0aXZlAHR5cGUgIT0gMEwAc3RybGVuKHR5cGUpIDwgKChpbnQpKHNpemVvZihwYXlsb2FkLkRhdGFUeXBlKS9zaXplb2YoKnBheWxvYWQuRGF0YVR5cGUpKSkgJiYgIlBheWxvYWQgdHlwZSBjYW4gYmUgYXQgbW9zdCAxMiBjaGFyYWN0ZXJzIGxvbmciAChkYXRhICE9IDBMICYmIGRhdGFfc2l6ZSA+IDApIHx8IChkYXRhID09IDBMICYmIGRhdGFfc2l6ZSA9PSAwKQBjb25kID09IEltR3VpQ29uZF9BbHdheXMgfHwgY29uZCA9PSBJbUd1aUNvbmRfT25jZQBwYXlsb2FkLlNvdXJjZUlkICE9IDAAcGF5bG9hZC5EYXRhRnJhbWVDb3VudCAhPSAtMQBJbUd1aSBNZXRyaWNzAERlYXIgSW1HdWkgJXMAQXBwbGljYXRpb24gYXZlcmFnZSAlLjNmIG1zL2ZyYW1lICglLjFmIEZQUykAJWQgdmVydGljZXMsICVkIGluZGljZXMgKCVkIHRyaWFuZ2xlcykAJWQgYWxsb2NhdGlvbnMAAVNob3cgY2xpcHBpbmcgcmVjdGFuZ2xlcyB3aGVuIGhvdmVyaW5nIGRyYXcgY29tbWFuZHMAV2luZG93cwBEcmF3TGlzdABBY3RpdmUgRHJhd0xpc3RzICglZCkAUG9wdXBzAE9wZW4gUG9wdXBzIFN0YWNrICglZCkAUG9wdXBJRDogJTA4eCwgV2luZG93OiAnJXMnJXMlcwBOVUxMACBDaGlsZFdpbmRvdwAgQ2hpbGRNZW51AEludGVybmFsIHN0YXRlAE5vbmUATW91c2UATmF2AE5hdkdhbWVwYWQATmF2S2V5Ym9hcmQASG92ZXJlZFdpbmRvdzogJyVzJwBIb3ZlcmVkUm9vdFdpbmRvdzogJyVzJwBIb3ZlcmVkSWQ6IDB4JTA4WC8weCUwOFggKCUuMmYgc2VjKQBBY3RpdmVJZDogMHglMDhYLzB4JTA4WCAoJS4yZiBzZWMpLCBBY3RpdmVJZFNvdXJjZTogJXMAQWN0aXZlSWRXaW5kb3c6ICclcycATmF2V2luZG93OiAnJXMnAE5hdklkOiAweCUwOFgsIE5hdkxheWVyOiAlZABOYXZBY3RpdmU6ICVkLCBOYXZWaXNpYmxlOiAlZABOYXZBY3RpdmF0ZUlkOiAweCUwOFgsIE5hdklucHV0SWQ6IDB4JTA4WABOYXZEaXNhYmxlSGlnaGxpZ2h0OiAlZCwgTmF2RGlzYWJsZU1vdXNlSG92ZXI6ICVkAERyYWdEcm9wOiAlZCwgU291cmNlSWQgPSAweCUwOFgsIFBheWxvYWQgIiVzIiAoJWQgYnl0ZXMpACMjT3ZlcmxheQBnLk5hdldpbmRvdwBTZXROYXZJRABuYXZfbGF5ZXIgPT0gMCB8fCBuYXZfbGF5ZXIgPT0gMQBOYXZVcGRhdGUAZy5OYXZXaW5kb3cgJiYgcmVzdWx0LT5XaW5kb3cAZy5OYXZNb3ZlUmVxdWVzdABnLk5hdkxheWVyID09IDAgfHwgZy5OYXZMYXllciA9PSAxAGNoaWxkX3dpbmRvdy0+Q2hpbGRJZCAhPSAwAGcuTmF2QWN0aXZhdGVEb3duSWQgPT0gZy5OYXZBY3RpdmF0ZUlkAGcuTmF2TW92ZURpciAhPSBJbUd1aURpcl9Ob25lAGcuTmF2TW92ZVJlcXVlc3RGb3J3YXJkID09IEltR3VpTmF2Rm9yd2FyZF9Gb3J3YXJkUXVldWVkACFnLk5hdlNjb3JpbmdSZWN0U2NyZWVuLklzSW52ZXJ0ZWQoKQBnLk5hdldpbmRvd2luZ1RhcmdldABOYXZVcGRhdGVXaW5kb3dpbmdIaWdobGlnaHRXaW5kb3cAZy5Nb3ZpbmdXaW5kb3cgJiYgZy5Nb3ZpbmdXaW5kb3ctPlJvb3RXaW5kb3cAVXBkYXRlTW92aW5nV2luZG93AFBvcz0lZiwlZgBTaXplPSVmLCVmAENvbGxhcHNlZD0lZAAjIyMAWyVzXVslc10KAFBvcz0lZCwlZAoAU2l6ZT0lZCwlZAoAQ29sbGFwc2VkPSVkCgByYgB3dABkcmF3X2xpc3QtPlZ0eEJ1ZmZlci5TaXplID09IDAgfHwgZHJhd19saXN0LT5fVnR4V3JpdGVQdHIgPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuRGF0YSArIGRyYXdfbGlzdC0+VnR4QnVmZmVyLlNpemUAQWRkRHJhd0xpc3RUb0RyYXdEYXRhAGRyYXdfbGlzdC0+SWR4QnVmZmVyLlNpemUgPT0gMCB8fCBkcmF3X2xpc3QtPl9JZHhXcml0ZVB0ciA9PSBkcmF3X2xpc3QtPklkeEJ1ZmZlci5EYXRhICsgZHJhd19saXN0LT5JZHhCdWZmZXIuU2l6ZQAoaW50KWRyYXdfbGlzdC0+X1Z0eEN1cnJlbnRJZHggPT0gZHJhd19saXN0LT5WdHhCdWZmZXIuU2l6ZQBkcmF3X2xpc3QtPl9WdHhDdXJyZW50SWR4IDwgKDEgPDwgMTYpICYmICJUb28gbWFueSB2ZXJ0aWNlcyBpbiBJbURyYXdMaXN0IHVzaW5nIDE2LWJpdCBpbmRpY2VzLiBSZWFkIGNvbW1lbnQgYWJvdmUiAAolKnMlLipzACAlLipzACVzLyVzXyUwOFgAJXMvJTA4WABpdCA+PSBEYXRhICYmIGl0IDw9IERhdGErU2l6ZQBpbnNlcnQAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hJRC9Qb3BJRCBvciBUcmVlTm9kZS9UcmVlUG9wIE1pc21hdGNoISIAQ2hlY2tTdGFja3NTaXplACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJCZWdpbkdyb3VwL0VuZEdyb3VwIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIkJlZ2luTWVudS9FbmRNZW51IG9yIEJlZ2luUG9wdXAvRW5kUG9wdXAgTWlzbWF0Y2giACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoU3R5bGVDb2xvci9Qb3BTdHlsZUNvbG9yIE1pc21hdGNoISIAKnBfYmFja3VwID09IGN1cnJlbnQgJiYgIlB1c2hTdHlsZVZhci9Qb3BTdHlsZVZhciBNaXNtYXRjaCEiACpwX2JhY2t1cCA9PSBjdXJyZW50ICYmICJQdXNoRm9udC9Qb3BGb250IE1pc21hdGNoISIAI1JFU0laRQBHZXRCb3JkZXJSZWN0AGlkeCA+PSAwICYmIGlkeCA8IEltR3VpU3R5bGVWYXJfQ291bnRfAEdldFN0eWxlVmFySW5mbwAlLipkACUuKmYAcG9zIDw9IHRleHRfbGVuAFNUQl9URVhURURJVF9JTlNFUlRDSEFSUwBJdGVtc0NvdW50ID09IC0xAH5JbUd1aUxpc3RDbGlwcGVyACMjc2VsZWN0YWJsZQAjI2R1bW15cGlja2VyAEFscGhhIEJhcgBjb2x1bW5faW5kZXggPiAwAEdldERyYWdnZWRDb2x1bW5PZmZzZXQAZy5BY3RpdmVJZCA9PSBjb2x1bW5zLT5JRCArIEltR3VpSUQoY29sdW1uX2luZGV4KQAlcyAoJWQpACVzICclcycsICVkIEAgMHglcABQb3M6ICglLjFmLCUuMWYpLCBTaXplOiAoJS4xZiwlLjFmKSwgU2l6ZUNvbnRlbnRzICglLjFmLCUuMWYpAEZsYWdzOiAweCUwOFggKCVzJXMlcyVzJXMlcy4uKQBDaGlsZCAAVG9vbHRpcCAAUG9wdXAgAE1vZGFsIABDaGlsZE1lbnUgAE5vU2F2ZWRTZXR0aW5ncyAAU2Nyb2xsOiAoJS4yZi8lLjJmLCUuMmYvJS4yZikAQWN0aXZlOiAlZCwgV3JpdGVBY2Nlc3NlZDogJWQATmF2TGFzdElkczogMHglMDhYLDB4JTA4WCwgTmF2TGF5ZXJBY3RpdmVNYXNrOiAlWABOYXZMYXN0Q2hpbGROYXZXaW5kb3c6ICVzAE5hdlJlY3RSZWxbMF06ICglLjFmLCUuMWYpKCUuMWYsJS4xZikATmF2UmVjdFJlbFswXTogPE5vbmU+AFJvb3RXaW5kb3cAQ2hpbGRXaW5kb3dzAFN0b3JhZ2U6ICVkIGJ5dGVzACVzOiAnJXMnICVkIHZ0eCwgJWQgaW5kaWNlcywgJWQgY21kcwBDVVJSRU5UTFkgQVBQRU5ESU5HAENhbGxiYWNrICVwLCB1c2VyX2RhdGEgJXAARHJhdyAlNGQgJXMgdnR4LCB0ZXggMHglcCwgY2xpcF9yZWN0ICglNC4wZiwlNC4wZiktKCU0LjBmLCU0LjBmKQBpbmRleGVkAG5vbi1pbmRleGVkACVzICUwNGQ6IHBvcyAoJTguMmYsJTguMmYpLCB1diAoJS42ZiwlLjZmKSwgY29sICUwOFgKAHZ0eAAgICAAaXQgPj0gRGF0YSAmJiBpdCA8IERhdGErU2l6ZQBlcmFzZQBpIDwgU2l6ZQBvcGVyYXRvcltdAGRyYXdfY21kLkNsaXBSZWN0LnggPD0gZHJhd19jbWQuQ2xpcFJlY3QueiAmJiBkcmF3X2NtZC5DbGlwUmVjdC55IDw9IGRyYXdfY21kLkNsaXBSZWN0LncAaW1ndWkvaW1ndWlfZHJhdy5jcHAAQWRkRHJhd0NtZABfQ2xpcFJlY3RTdGFjay5TaXplID4gMABwb3BfYmFjawBfVGV4dHVyZUlkU3RhY2suU2l6ZSA+IDAAUG9wVGV4dHVyZUlEAF9DaGFubmVsc0N1cnJlbnQgPT0gMCAmJiBfQ2hhbm5lbHNDb3VudCA9PSAxAENoYW5uZWxzU3BsaXQAYmFjawBpZHggPCBfQ2hhbm5lbHNDb3VudABDaGFubmVsc1NldEN1cnJlbnQAZm9udC0+Q29udGFpbmVyQXRsYXMtPlRleElEID09IF9UZXh0dXJlSWRTdGFjay5iYWNrKCkAYXRsYXMtPkNvbmZpZ0RhdGEuU2l6ZSA+IDAASW1Gb250QXRsYXNCdWlsZFdpdGhTdGJUcnVldHlwZQBjZmcuRHN0Rm9udCAmJiAoIWNmZy5Ec3RGb250LT5Jc0xvYWRlZCgpIHx8IGNmZy5Ec3RGb250LT5Db250YWluZXJBdGxhcyA9PSBhdGxhcykAZm9udF9vZmZzZXQgPj0gMABuID09IGZvbnRfZ2x5cGhzX2NvdW50AGJ1Zl9yZWN0c19uID09IHRvdGFsX2dseXBoc19jb3VudABidWZfcGFja2VkY2hhcnNfbiA9PSB0b3RhbF9nbHlwaHNfY291bnQAYnVmX3Jhbmdlc19uID09IHRvdGFsX3Jhbmdlc19jb3VudAByLkZvbnQtPkNvbnRhaW5lckF0bGFzID09IGF0bGFzAEltRm9udEF0bGFzQnVpbGRGaW5pc2gAR2x5cGhzLlNpemUgPCAweEZGRkYAQnVpbGRMb29rdXBUYWJsZQBJbmRleEFkdmFuY2VYLlNpemUgPT0gSW5kZXhMb29rdXAuU2l6ZQBHcm93SW5kZXgAVGV4V2lkdGggPiAwICYmIFRleEhlaWdodCA+IDAAQ2FsY0N1c3RvbVJlY3RVVgByZWN0LT5Jc1BhY2tlZCgpAGF0bGFzLT5DdXN0b21SZWN0SWRzWzBdID49IDAASW1Gb250QXRsYXNCdWlsZFJlbmRlckRlZmF1bHRUZXhEYXRhAGF0bGFzLT5UZXhQaXhlbHNBbHBoYTggIT0gMEwAci5JRCA9PSBGT05UX0FUTEFTX0RFRkFVTFRfVEVYX0RBVEFfSUQAci5Jc1BhY2tlZCgpAHIuV2lkdGggPT0gRk9OVF9BVExBU19ERUZBVUxUX1RFWF9EQVRBX1dfSEFMRiAqIDIgKyAxICYmIHIuSGVpZ2h0ID09IEZPTlRfQVRMQVNfREVGQVVMVF9URVhfREFUQV9IAC4uLSAgICAgICAgIC1YWFhYWFhYLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YWFhYWFhYICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC4uLSAgICAgICAgIC1YLi4uLi5YLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YLi4uLi5YICAgICAgICAgIC0gICAgICAgICAgWC4uLi4uWC0tLSAgICAgICAgIC1YWFguWFhYLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC1YLi4uLlggICAgICAgICAgIC0gICAgICAgICAgIFguLi4uWFggICAgICAgICAgIC0gIFguWCAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC1YLi4uWCAgICAgICAgICAgIC0gICAgICAgICAgICBYLi4uWFhYICAgICAgICAgIC0gIFguWCAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC1YLi5YLlggICAgICAgICAgIC0gICAgICAgICAgIFguWC4uWFguWCAgICAgICAgIC0gIFguWCAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC1YLlggWC5YICAgICAgICAgIC0gICAgICAgICAgWC5YIFguWFguLlggICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC1YWCAgIFguWCAgICAgICAgIC0gICAgICAgICBYLlggICBYWFguLi5YICAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICBYLlggICAgICAgIC0gICAgICAgIFguWCAgICAgIFguLi4uWCAgICAgIC0gIFguWCAgLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgWC5YICAgICAgIC0gICAgICAgWC5YICAgICAgIFguLi4uLlggICAgIC0gIFguWCAgLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgIFguWCAgICAgIC0gICAgICBYLlggICAgICAgIFguLi4uLi5YICAgIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICBYLlggICBYWC1YWCAgIFguWCAgICAgICAgIFguLi4uLi4uWCAgIC0gIFguWCAgLSAgIFguWCAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgWC5YIFguWC1YLlggWC5YICAgICAgICAgIFguLi4uLi4uLlggIC0gIFguWCAgLSAgIFguWCAgIC0gWC4uLlhYWFhYWC5YWFhYWFguLi5YIC0gICAgICAgICAgIFguWC4uWC1YLi5YLlggICAgICAgICAgIFguLi4uLi4uLi5YIC1YWFguWFhYLSAgIFguWCAgIC0gIFguLlggICAgWC5YICAgIFguLlggIC0gICAgICAgICAgICBYLi4uWC1YLi4uWCAgICAgICAgICAgIFguLi4uLi4uLi4uWC1YLi4uLi5YLSAgIFguWCAgIC0gICBYLlggICAgWC5YICAgIFguWCAgIC0gICAgICAgICAgIFguLi4uWC1YLi4uLlggICAgICAgICAgIFguLi4uLi5YWFhYWC1YWFhYWFhYLSAgIFguWCAgIC0gICAgWFggICAgWC5YICAgIFhYICAgIC0gICAgICAgICAgWC4uLi4uWC1YLi4uLi5YICAgICAgICAgIFguLi5YLi5YICAgIC0tLS0tLS0tLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gICAgICAgICAgWFhYWFhYWC1YWFhYWFhYICAgICAgICAgIFguLlggWC4uWCAgIC0gICAgICAgLVhYWFguWFhYWC0gICAgICAgWFhYWC5YWFhYICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVguWCAgWC4uWCAgIC0gICAgICAgLVguLi4uLi4uWC0gICAgICAgWC4uLi4uLi5YICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIFhYICAgIFguLlggIC0gICAgICAgLSBYLi4uLi5YIC0gICAgICAgIFguLi4uLlggICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgIFguLlggICAgICAgICAgLSAgWC4uLlggIC0gICAgICAgICBYLi4uWCAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICBYWCAgICAgICAgICAgLSAgIFguWCAgIC0gICAgICAgICAgWC5YICAgICAgICAgIC0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgIC0tLS0tLS0tLS0tLSAgICAgICAgLSAgICBYICAgIC0gICAgICAgICAgIFggICAgICAgICAgIC1YLi4uLi4uLi4uLi4uLi4uLi4uLi4uWC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gWC4uLlhYWFhYWFhYWFhYWFguLi5YIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gIFguLlggICAgICAgICAgIFguLlggIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICBYLlggICAgICAgICAgIFguWCAgIC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gICAgWFggICAgICAgICAgIFhYICAgIC0gICAgICAgICAgIAByLldpZHRoID09IDIgJiYgci5IZWlnaHQgPT0gMgBwaXhlbHNbaSpzdHJpZGVfaW5fYnl0ZXNdID09IDAAaW1ndWkvc3RiX3RydWV0eXBlLmgAc3RidHRfX3ZfcHJlZmlsdGVyAHBpeGVsc1tpXSA9PSAwAHN0YnR0X19oX3ByZWZpbHRlcgB6LT5kaXJlY3Rpb24Ac3RidHRfX3Jhc3Rlcml6ZV9zb3J0ZWRfZWRnZXMAei0+ZXkgPj0gc2Nhbl95X3RvcABlLT5leSA+PSB5X3RvcABzdGJ0dF9fZmlsbF9hY3RpdmVfZWRnZXNfbmV3AGUtPnN5IDw9IHlfYm90dG9tICYmIGUtPmV5ID49IHlfdG9wAHggPj0gMCAmJiB4IDwgbGVuAGZhYnMoYXJlYSkgPD0gMS4wMWYAeTAgPCB5MQBzdGJ0dF9faGFuZGxlX2NsaXBwZWRfZWRnZQBlLT5zeSA8PSBlLT5leQB4MSA8PSB4KzEAeDEgPj0geAB4MSA8PSB4AHgxID49IHgrMQB4MSA+PSB4ICYmIHgxIDw9IHgrMQB4MCA+PSB4ICYmIHgwIDw9IHgrMSAmJiB4MSA+PSB4ICYmIHgxIDw9IHgrMQB6ICE9IDBMAHN0YnR0X19uZXdfYWN0aXZlACFpbmZvLT5jZmYuc2l6ZQBzdGJ0dF9fR2V0R2x5Zk9mZnNldAAwAHN0YnR0X19jZmZfaW50AG4gPj0gMSAmJiBuIDw9IDQAc3RidHRfX2J1Zl9nZXQAc2l6ZSA8IDB4NDAwMDAwMDAAc3RidHRfX25ld19idWYAIShvID4gYi0+c2l6ZSB8fCBvIDwgMCkAc3RidHRfX2J1Zl9zZWVrAG9mZnNpemUgPj0gMSAmJiBvZmZzaXplIDw9IDQAc3RidHRfX2NmZl9nZXRfaW5kZXgAYjAgPj0gMjgAc3RidHRfX2NmZl9za2lwX29wZXJhbmQAaSA+PSAwICYmIGkgPCBjb3VudABzdGJ0dF9fY2ZmX2luZGV4X2dldABvdXRwdXRfY3R4Lm51bV92ZXJ0aWNlcyA9PSBjb3VudF9jdHgubnVtX3ZlcnRpY2VzAHN0YnR0X19HZXRHbHlwaFNoYXBlVDIAc3RidHRfX0dldEdseXBoU2hhcGVUVABzdGJ0dF9GaW5kR2x5cGhJbmRleAB1bmljb2RlX2NvZGVwb2ludCA8PSB0dFVTSE9SVChkYXRhICsgZW5kQ291bnQgKyAyKml0ZW0pAHdpZHRoICUgYy0+YWxpZ24gPT0gMABpbWd1aS9zdGJfcmVjdF9wYWNrLmgAc3RicnBfX3NreWxpbmVfZmluZF9iZXN0X3BvcwB4cG9zID49IDAAbm9kZS0+bmV4dC0+eCA+IHhwb3MgJiYgbm9kZS0+eCA8PSB4cG9zAGZpcnN0LT54IDw9IHgwAHN0YnJwX19za3lsaW5lX2ZpbmRfbWluX3kAbm9kZS0+bmV4dC0+eCA+IHgwAGNtYXAAbG9jYQBoZWFkAGdseWYAaGhlYQBobXR4AGtlcm4AQ0ZGIABtYXhwAHVzZXJfcmVjdHMuU2l6ZSA+PSAxAEltRm9udEF0bGFzQnVpbGRQYWNrQ3VzdG9tUmVjdHMAcGFja19yZWN0c1tpXS53ID09IHVzZXJfcmVjdHNbaV0uV2lkdGggJiYgcGFja19yZWN0c1tpXS5oID09IHVzZXJfcmVjdHNbaV0uSGVpZ2h0AGhfb3ZlcnNhbXBsZSA8PSA4AHN0YnR0X1BhY2tTZXRPdmVyc2FtcGxpbmcAdl9vdmVyc2FtcGxlIDw9IDgAd2lkdGggPD0gMHhmZmZmICYmIGhlaWdodCA8PSAweGZmZmYAc3RicnBfaW5pdF90YXJnZXQAaWQgPj0gMHgxMDAwMABBZGRDdXN0b21SZWN0UmVndWxhcgB3aWR0aCA+IDAgJiYgd2lkdGggPD0gMHhGRkZGAGhlaWdodCA+IDAgJiYgaGVpZ2h0IDw9IDB4RkZGRgBQcm9nZ3lDbGVhbi50dGYsIDEzcHgAN10pIyMjIyMjI2hWMHFzJy8jIyNbKSwjIy9sOiQjUTY+IyM1W240Mj5jLVRIYC0+PiMvZT4xMU5OVj1CdigqOi5GP3V1IyhnUlUubzBYR0hgJHZoTEcxaHh0OT9XYCMsNUxzQ3AjLWk+LnIkPCQ2cEQ+TGInOzlDcmM2dGdYbUtWZVUyY0Q0RW8zUi8yKj5dYihNQzskalBmWS47aF5gSVdNOTxMaDJUbFMrZi1zJG82UTxCV0hgWWlVLnhmTHEkTjskMGlSL0dYOlUoamNXMnAvVypxPy1xbW5VQ0k7akhTQWlGV00uUiprVUBDPUdIP2E5d3A4ZiRlLi00XlFnMSlRLUdMKGxmKHIvN0dyUmd3ViVNUz1DI2A4TkQ+UW8jdCdYIyh2I1k5dzAjMUQkQ0lmO1cnI3BXVVBYT3V4WHVVKEg5TSgxPHEtVUUzMSNeLVYnOElSVW83UWYuL0w+PUtlJCQnNUYlKV0wXiMwWEBVLmE8cjpRTHRGc0xjTDYjI2xPaikjLlk1PC1SJktnTHdxSmZMZ04mO1E/Z0leI0RZMnVMaUBeck1sOXQ9Y1dxNiMjd2VnPiRGQmpWUVRTRGdFS25JUzdFTTk+Wlk5dzAjTDs+PiNNeCY0TXZ0Ly9MW01rQSNXQGxLLk4nWzAjN1JMXyYjdytGJUh0RzlNI1hMYE4mLixHTTRQZzstPG5MRU5odng+LVZzTS5NMHJKZkxIMmVUTWAqb0pNSFJDYE5rZmltTTJKLFctalhTOilyMHdLI0BGZ2UkVT5gdydON0cjJCNmQiMkRV4kIzo5OmhrK2VPZS0tNngpRjcqRSU/NzYlXkdNSGVQVy1aNWwnJkdpRiMkOTU2OnJTP2RBI2ZpSzopWXIrYCYjMGpAJ0RiRyYjXiRQRy5MbCtETmE8WENNS0VWKk4pTE4vTipiPSVRNnBpYS1YZzhJJDxNUiYsVmRKZSQ8KDdHO0NrbCcmaEY7OyQ8Xz1YKGIuUlMlJSkjIyNNUEJ1dUUxVjp2JmNYJiMybSMoJmNWXWBrOU9oTE1ibiVzJEcyLEIkQmZEM1gqc3A1I2wsJFIjXXhfWDF4S1glYjVVKltyNWlNZlVvOVVgTjk5aEcpdG0rL1VzOXBHKVhQdWA8MHMtKVdUdChnQ1J4SWcoJTZzZmg9a3RNS24zaik8NjxiNVNrXy8wKF5dQWFOIyhwL0w+JlZaPjFpJWgxUzl1NW9AWWFhVyRlK2I8VFdGbi9aOk9oKEN4MiRsTkVvTl5lKSNDRllAQEk7Qk9RKnNSd1p0WnhSY1U3dVc2Q1hvdzBpKD8kUVtjak9kW1A0ZCldPlJPUE9weFRPN1N0d2kxOjppQjFxKUNfPWRWMjZKOzIsXTdvcCRddVFyQF9WNyRxXiVsUXd0dUhZXT1EWCxuM0wjMFBIRE80Zjk+ZENATz5IQnVLUHBQKkUsTitiM0wjbHBSL01yVEVILklBUWsuYT5EWy5lO21jLnhdSXAuUEheJy9hcVVPLyQxV3hMb1cwW2lMQTxRVDs1SEtEK0BxUSdOUSgzX1BMaEU0OFIucUFQU3dRMC9XSz9aLFt4Py1KO2pRVFdBMFhAS0ooX1k4Ti06L003NDovLVpwS3JVc3M/ZCNkWnFdREFia1UqSnFrTCtud1hAQDQ3YDU+dz00aCg5LmBHQ1JVeEhQZVJgNU1qb2woZFVXeFphKD5TVHJQa3JKaVd4YDVVN0YjLmcqanJvaEdnYGNnOmxTVHZFWS9FVl83SDRROVtaJWNudjtKUVlaNXEubDdaZWFzOkhPSVpPQj9HPE5hbGQkcXNdQF1MPEo3YlIqPmd2Ols3TUkyaykuJzIoJDVGTlAmRVEoLClVXVddK2ZoMTgudnNhaTAwKTtEM0A0a3U1UD9EUDhhSnQrO3FVTV09K2InOEA7bVZpQkt4MERFWy1hdUdsODpQSiZEaitNNk9DXU9eKCgjI11gMGkpZHJUOy03WGA9LUgzW2lnVW5QRy1OWmxvLiNrQGgjPU9yayRtPmE+JC0/VG0kVVYoPyNQNllZIycvIyMjeGU3cS43M3JJMypwUC8kMT5zOSlXLEpyTTdTTl0nLzRDI3YkVWAwI1YuWzA+eFFzSCRmRW1QTWdZMnU3S2goRyVzaUlmTFNvUytNSzJlVE0kPTUsTThwYEEuO19SJSN1W0sjJHg0QUc4LmtLL0hTQj09LSdJZS9RVHRHPy0uKl5OLTRCL1pNXzNZbFFDNyhwN3EpJl0oYDZfYykkLypKTChMLV4oXSR3SU1gZFB0T2RHQSxVMzp3Mk0tMDxxLV1MXz9eKTF2dycuLE1Sc3FWci5MO2FOJiMvRWdKKVBCY1stZj4rV29tWDJ1N2xxTTJpRXVtTVRjc0Y/LWFUPVotOTdVRW5YZ2xFbjFLLWJuRU9gZ3VGdChjJT07QW1fUXNAakxvb0kmTlg7XTAjajQjRjE0O2dsOC1HUXBnd2hycTgnPWxfZi1iNDknVU9xa0x1Ny0jI29EWTJMKHRlK01jaCZnTFl0SixNRXRKZkxoJ3gnTT0kQ1MtWlolUF04Ylo+I1M/WVkjJVEmcSczXkZ3Jj9EKVVETnJvY00zQTc2Ly9vTD8jaDdnbDg1W3FXL05ET2slMTZpajsrOjFhJ2lOSWRiLW91OC5QKncsdjUjRUkkVFdTPlBvdC1SKkgnLVNFcEE6ZylmK08kJSVga0EjRz04Uk1tRzEmT2A+dG84YkNdVCYkLG4uTG9PPjI5c3AzZHQtNTJVJVZNI3E3J0RIcGcrI1o5JUhbSzxMJWEyRS1ncldWTTNAMj0tazIydExdNCQjIzZXZSc4VUpDS0VbZF89JXdJOyc2WC1Hc0xYNGpeU2dKJCMjUip3LHZQM3dLI2lpVyYjKmheRCZSP2pwNysvdSYjKEFQIyNYVThjJGZTWVctSjk1Xy1EcFtnOXdjTyYjTS1oMU9jSmxjLSp2cHcweFVYJiNPUUZLTlhAUUknSW9QcDduYixRVS8vTVEmWkRrS1ApWDxXU1ZMKDY4dVZsJiNjJ1swIyhzMVgmeG0kWSVCNypLOmVEQTMyM2o5OThHWGJBI3B3TXMtamdEJDlRSVNCLUFfKGFONHhvRk1eQEM1OEQwK1ErcTNuMCMzVTFJbkRqRjY4Mi1Tak1YSkspKGgkaHh1YV9LXXVsOTIlJ0JPVSYjQlJSaC1zbGc4S0RscjolTDcxS2E6LkE7JVlVTGpEUG1MPExZczhpI1h3Sk9ZYUtQS2MxaDonOUtlLGcpYiksNzg9STM5Qjt4aVkkYmdHdy0mLlppOUluWER1WWElRypmMkJxN21uOV4jcDF2diUjKFdpLTsvWjVobzsjMjo7JWQmI3g5djY4QzVnP250WDBYKXBUYDslcEIzcTdtZ0dOKTMlKFA4blRkNUw3R2VBLUdMQCslSjN1MjooWWY+ZXRgZTspZiNLbTgmK0RDJEk0Nj4jS3JdXXUtWz05OXR0czEucWIjcTcyZzFXSk84MXErZU4nMDMnZU0+JjFYeFktY2FFbk9qJTJuOCkpLD9JTFI1Xi5JYm48LVgtTXE3W2E4MkxxOkYmI2NlK1M5d3NDSyp4YDU2OUU4ZXcnSGVdaDpzSVsyTE0kW2d1a2EzWlJkNjp0JUlHOjskJVlpSjpOcT0/ZUF3Oy86bm5EcTAoQ1ljTXBHKXFMTjQkIyMmSjxqJFVwSzxRNGExXU11cFdeLXNqXyQlW0hLJSdGIyMjI1FSWko6OlkzRUdsNCdAJUZraUFPZyNwWyMjT2BndWtUZkJIYWdMPExIdyVxJk9WMCMjRj02LzpjaEltMEBlQ1A4WF06a0ZJJWhsOGhnT0BSY0JoUy1AUWIkJSttPWhQRExnKiVLOGxuKHdjZjMvJ0RXLSQubFI/bltuQ0gtZVhPT05USmxoOi5SWUYlMydwNnNxOlVJTUE5NDUmXkhGUzg3QCRFUDJpRzwtbENPJCVjYHVLR0QzckMkeDBCTDhhRm4tLWBrZSUjSE1QJ3ZoMS9SJk9fSjkndW0sLjx0eFtAJXdzSmsmYlVUMmAwdU12N2dnI3FwL2lqLkw1NidobDsuczVDVXJ4ak9NNy0jIy5sK0F1J0EmTzotVDcyTF1QYCY9O2N0cCdYU2NYKnJVLj4tWFR0LCVPVlU0KVMxK1ItI2RnMC9Obj9LdTFeMGYkQipQOlJvd3dtLWAwUEtqWURETSczXWQzOVZaSEVsNCwuaiddUGstTS5oXiY6MEZBQ20kbWFxLSZzZ3cwdDcvNiheeHRrJUx1SDg4RmotZWttPkdBI18+NTY4eDYoT0ZSbC1JWnBgJmIsX1AnJE08Sm5xNzlWc0pXL21XUypQVWlxNzY7XS9OTV8+aExieGZjJG1qYCxPOyYlVzJtYFpoOi8pVWV0dzphSiVdSzloOlRjRl11Xy1TajksVkszTS4qJyYwRFtDYV1KOWdwOCxrQVddJSg/QSVSJGY8LT5adHMnXmtuPS1eQGM0JS1wWTZxSSVKJTFJR3hmTFU5Q1A4Y2JQbFh2KTtDPWIpLDwybU92UDh1cCxVVmYzODM5YWNBV0FXLVc/I2FvL14jJUtZbzhmUlVMTmQyLj4lbV1VSzpuJXIkJ3N3XUo7NXBBb09fIzJtTzNuLCc9SDUoZXRIZypgK1JMZ3Y+PTRVOGd1RCRJJUQ6Vz4tcjVWKiVqKlc6S3Zlai5McCQ8TS1TR1onOitRX2srdXZPU0xpRW8oPGFEL0s8Q0NjYCdMeD4nPzsrK08nPigpakxSLV51NjhQSG04WkZXZStlajhoOjlyNkwqMC8vYyZpSCZSOHBSYkEjS2ptJXVwVjFnOmFfI1VyN0Z1QSModFJoIy5ZNUsrQD8zPC04bTAkUEVuO0o6cmg2P0k2dUc8LWB3TVUnaXJjcDBMYUVfT3RsTWImMSM2VC4jRkRLdSMxTHcldSUrR00rWCdlP1lMZmpNW1ZPME1idUZwNzs+USYjV0lvKTBARiVxN2MjNFhBWE4tVSZWQjxIRkYqcUwoJC9WLDsoa1haZWpXT2A8WzU/P2V3WSgqOT0ld0RjOyx1PCc5dDNXLShIMXRoMytHXXVjUV1rTHM3ZGYoJC8qSkxdQCp0N0J1X0czXzdtcDc8aWFRak9ALmtMZzt4M0IwbHFwN0hmLF5aZTctIyNAL2M1OE1vKDM7a25wMCUpQTc/LVcrZUknbzgpYjxuS253J0hvOEM9WT5wcUI+MGllJmpoWls/aUxSQEBfQXZBLWlRQyg9a3NSWlJWcDdgLj0rTnBCQyVyaCYzXVI6OFhEbUU1XlY4Tyh4PDxhRy8xTiQjRlgkMFY1WTZ4J2FFckkzSSQ3eCVFYHY8LUJZLCklLT9Qc2YqbD8lQzMubU0oPS9NMDpKeEcnPzdXaEglbydhPC04MGcwTkJ4b08oR0g8ZE1dbi4rJXFAakg/Zi5Vc0oyR2dzJjQ8LWU0NyZLbCtmLy85QGBiKz8uVGVOXyZCOFNzP3Y7XlRyaztmI1l2SmtsJnckXT4tK2s/Jyg8Uzo2OHRxKldvRGZadSc7bU0/OFhbbWE4VyUqYC09O0QuKG5jNy87KWc6VDE9XkokJkJSVigtbFRtTkI2eHFCW0AwKm8uZXJNKjxTV0ZddTI9c3QtKig2dj5eXShILmFSRVpTaSwjMTpbSVhhWkZPbTwtdWkjcVVxMiQjI1JpO3U3NU9LIyhSdGFXLUstRmBTK2NGXXVOYC1LTVElclAvWHJpLkxSY0IjIz1ZTDNCZ00vM01EP0BmJjEnQlctKUp1PEwyNWdsOHVoVm0xaEwkIyMqOCMjIydBMy9Ma0tXKyhecldYPzVXXzhnKWEobSZLOFA+I2JtbVdDTWtrJiNUUmBDLDVkPmcpRjt0LDQ6QF9sOEcvNWg0dlVkJSYlOTUwOlZYRCdRZFdvWS1GJEJ0VXdtZmUkWXFMJzgoUFdYKFA/XkBQbzMkIyNgTVNzP0RXQlovUz4rNCU+ZlgsVld2L3cnS0RgTFA1SWJIO3JUVj5uM2NFSzhVI2JYXWwtL1YrXmxqMzt2bE1iJls1WVE4I3Bla1g5SlAzWFVDNzJMLCw/K05pJmNvN0Fwbk8qNU5LLCgoVy1pOiQsa3AnVURBTyhHMFNxN01WakpzYkl1KSdaLCpbPmJyNWZYXjpGUEFXci1tMktnTDxMVU4wOThrVEYmI2x2bzU4PS92akRvOy47KUthKmhMUiMvaz1yS2J4dVZgPlFfbk42Jzh1VEcmIzFUNWcpdUx2Ojg3M1VwVExnSCsjRmdwSCdfbzE3ODBQaDhLbXhRSjgjSDcyTDRANzY4QFRtJlFoNENCLzVPdm1BJixRJlFiVW9pJGFfJTNNMDFIKTR4N0leJktRVmd0Rm5WKztbUGM+W200ay8vLF0xPyNgVllbSnIqMyYmc2xSZkxpVlpKOl0/PUszU3c9WyQ9dVJCPzN4azQ4QGFlZzxaJzwkIzRIKTYsPmUwalQ2J04jKHElLk89PzJTXXUqKG08LVY4SicoMSlHXVs2OGhXJDUncVtHQyY1amBURT9tJ2VzRkdOUk0paixmZlo/LXF4ODstPmc0dCo6Q0lQL1tRYXA3LzknIygxc2FvN3ctLnFOVWRrSil0Q0YmI0JeO3hHdm4ycjlGRVBGRkZjTEAuaUZOa1R2ZSRtJSNRdlFTOFVAKTJaKzNLOkFLTTVpc1o4OCtkS1EpVzY+SiVDTDxLRT5gLmQqKEJgLW44RDlvSzxVcF1jJFgkKCwpTThadDcvW3Jka3FUZ2wtMGN1R012Jz8+LVhWMXFbJy01aydjQVo2OWU7RF8/JFpQUCZzXis3XSkkKiQjQFFZaTksNVAmIzlyKyQlQ0U9Njg+SzhyMD1kU0MlJShAcDcubTdqaWxRMDInMC1WV0FnPGEvJyczdS49NEwkWSk2ay9LOl9bMz0manZMPEwwQy8yJ3Y6XjstRElCVyxCNEU2ODprWjslPzgoUThCSD1rTzY1Qlc/eFNHJiNAdVUsRFMqLD8uKyhvKCMxdkNTOCNDSEY+VGxHVydiKVRxN1ZUOXFeKl4kJC46Jk5AQCQmKVdIdFBtKjVfck8wJmUlSyYjLTMwaihFNCMnWmIuby8oVHBtJD5LJ2ZAW1B2RmwsaGZJTlROVTZ1JzBwYW83JVhVcDldNS4+JWhgOF89VllieHVlbC5OVFNzSmZMYWNGdTNCJ2xRU3UvbTYtT3FlbThUK29FLS0kMGEva111ajlFd3NHPiV2ZVIqaHZeQkZwUWo6SycjU0osc0ItJyNdKGouTGc5MnJUdy0qbiVALzszOXJySkYsbCNxViVPcnRCZUM2Lyw7cUIzZWJOV1s/LEhxajJMLjFOUCZHalVSPTFEOFFhUzNVcCZAKjl3UD8rbG83Yj9AJSdrNGBwMFokMjIlSzMraUNaaj9YSk40Tm0mK1lGXXVALVckVSVWRVEvLCw+PiMpRDxoI2ApaDA6PFE2OTA5dWErJlZVJW4yOmNHM0ZKLSVAQmotRGdMcmBIdyZIQUtqS2pzZUs8L3hLVCopQixOOVgzXWtyYzEydCdwZ1RWKEx2LXRMW3hnXyU9TV9xN2FeeD83VWJkPiMlOGNZI1laPz0sYFdkeHUvYWUmI3c2KVI4OXRJIzZAcycoNkJmN2EmP1M9XlpJX2tTJmFpYCY9dEU3MkxfRCw7XlIpN1skczxFaCNjJilxLk1YSSUjdjlST2E1RlpPJXNGN3E3TndiJiNwdFVKOmFxSmUkU2w2OCUuRCMjI0VDPjw/LWFGJiNSTlF2Pm84bEtOJTUvJCh2ZGZxNytlYkEjdTFwXW92VUtXJlklcV0nPiQxQC1beGZuJDdaVHA3bU0sRyxLbzdhJkd1JUdbUk14SnNbME1NJXdjaS5MRkRLKSg8Y2BROE4pakVJRiorP1AyYThnJSkkcV1vMmFIOEMmPFNpYkMvcSwoZTp2Oy1iIzZbJE50RFo4NEplMktOdkIjJFA1P3RRM250KDBkPWouTFFmLi9MbDMzKyg7cTNMLXc9OGRYJCNXRiZ1SUpALWJmST4lOl9pMkI1Q3NSOCY5WiYjPW1QRW5tMGZgPCZjKVFMNXVKIyV1JWxKaitELXI7Qm9GJiM0RG9TOTdoNWcpRSNvOiZTNHdlREYsOV5Ib2VgaCpMK19hKk5yTFctMXBHXyYyVWRCODZlJUIvOj0+KU40eGVXLip3ZnQtOyQnNTgtRVNxcjxiP1VJKF8lQFtQNDY+I1VgJzZBUV1tJjYvYFo+I1M/WVkjVmM7cjdVMiYzMjZkPXcmSCMjIyM/VFpgKjQ/Ji5NSz9MUDhWeGc+JFtRWGMlUUp2OTIuKERiKkIpZ2IqQk05ZE0qaEpNQW8qYyYjYjB2PVBqZXJdJGdHJkpYRGYtPidTdHZVNzUwNWw5JEFGdmdZUkleJjxeYjY4P2ojcTlRWDRTTSdSTyMmc0wxSU0uckpmTFVBajIyMV1kIyNEVz1tODN1NTsnYll4LCpTbDBoTChXOzskZG9CJk8vVFE6KFpeeEJkTGpMPExuaTsnJ1guYCQjOCsxR0Q6ayRZVVdzYm44b2doNnJ4WjJaOV0lbmQrPlYjKjhVXzcyTGgrMlE4Q2owaTo2aHAmJEMvOnAoSEs+VDhZW2dIUTRgNCknJEFiKE5vZiVWJzhoTCYjPE5FZHRnKG4nPVMxQShRMS9JJjQoWyVkTWAsSXUnMTpfaEw+U2ZEMDcmNkQ8ZnA4ZEhNNy9nK3RsUE45SipyS2FQY3QmPyd1QkNlbV5qbiU5X0spPCxDNUszcz01ZyZHbUpiKltTWXE3SztUUkxHQ3NNLSQkO1MlOllAcjdBSzBwcHJwTDxMcmgscTdlLyVLV0s6NTBJXittJ3ZpYDM/JVpwKzwtZCskTC1TdjpALm8xOW4kczAmMzk7a247UyVCU3EqJDNXb0pTQ0x3ZVZbYVonTVFJak88NztYLVg7JitkTUx2dSNeVXNHRUM5V0VjW1god0k3IzIuKEYwalYqZVpmPC1RdjNKLWMrSjVBbHJCIyRwKEg2OEx2RUEncTNuMCNtLFtgKjhGdClGY1lnRXVkXUNXZm02OCwoYUxBJEBFRlRnTFhvQnEvVVBscDc6ZFsvO3JfaXg9OlRGYFM1SC1iPExJJkhZKEs9aCMpXUxrJEsxNGxWZm06eCRIPDNeUWw8TWAkT2hhcEJua3VwJ0QjTCRQYl9gTipnXTJlO1gvRHRnLGJzaiZLIzJbLTppWXInX3dnSClOVUlSOGExbiNTP1llaidoOF41OFViWmQrXkZLRCpUQDs2QTdhUUNbSzhkLSh2NkdJJHg6VDwmJ0dwNVVmPkBNLipKOjskLXJ2MjknTV04cU12LXRMcCwnODg2aWFDPUhiKllKb0tKLChqJUs9SGBLLnY5SGdncUJJaVp1J1F2QlQuIz0pMHVrcnVWJi4pMz0oXjFgbypQajQ8LTxhTigoXjcoJyNaMHdLIzVHWEA3dV1bYCpTXjQzOTMzQTRybF1bYCpPNENnTEVsXXYkMVEzQWVGMzdkYlhrLC4pdmojeCdkYDtxZ2JRUiVGVywyKD9MTz1zJVNjNjglTlAnIyNBb3RsOHg9QkUjajFVRChbMyRNKF1VSTJMWDNScEtOQDsvI2YnZi8mX210JkYpWGRGPDl0NClRYS4qa1RMd1EnKFRUQjkueEgnPiNNSitnTHE5LSMjQEh1WlBOMF11Omg3LlQuLkc6OyQvVXNqKFQ3YFE4dFQ3MkxuWWw8LXF4ODstSFY3US0mWGR4JTFhLGhDPTB1K0hsc1Y+bnVJUUwtNTxOPylOQlMpUU4qX0ksPyYpMidJTSVMM0kpWCgoZS9kbDImOCc8TTpeI00qUStbVC5YcmkuTFlTM3YlZkZgNjhoO2ItWFsvRW4nQ1IucTdFKXAnL2tsZTJITSx1O14lT0tDLU4rTGwlRjlDRjxOZideI3QyTCw7MjdXOjBPQDYjI1U2Vzc6JHJKZkxXSGokIyl3b3FCZWZJWi5QSzxiKnQ3ZWQ7cCpfbTs0RXhLI2hAJl0+Xz5Aa1hRdE1hY2ZELm0tVkFiODtJUmVNMyR3ZjAnJ2hyYSpzbzU2OCdJcCZ2UnM4NDknTVJZU3AlOnQ6aDVxU2d3cEVyJEI+USw7cyhDIyQpYHN2UXVGJCMjLUQsIyMsZzY4QDJbVDsuWFNkTjlRZSlycHQuX0stIzV3RilzUCcjI3AjQzBjJS1HYiVoZCs8LWonQWkqeCYmSE1rVF1DJ09TbCMjNVJHW0pYYUhOO2QndUEjeC5fVTsuYFBVQChaM2R0NHIxNTJAOnYsJ1IuU2ondyMwPC07a1BJKUZmSiYjQVlKJiMvLyk+LWs9bT0qWG5LJD49KTcyTF0wSSU+Lkc2OTBhOiQjIzwsKTs/OzcyIz94OStkO15WJzk7allAOyliciNxXllRcHg6WCNUZSRaXic9LT1iR2hMZjpENiZiTndaOS1aRCNuXjlIaExNcjVHOyddZCY2J3dZbVRGbUw8TEQpRl4lW3RDJzg7KzlFI0MkZyUjNVk+cTl3ST5QKDltSVs+a0MtZWtMQy9SJkNIK3MnQjtLLU02JEVCJWlzMDA6K0E0Wzd4a3MuTHJOazAmRSl3SUxZRkAyTCcwTmIkK3B2PCgyLjc2OC9GclkmaCReM2kmQCtHJUpUJzwtLHZgMztfKUk5TV5BRV1DTj9DbDJBWmcrJTRpVHBUMzxuLSYlSCViPEZEajJNPGhIPSZFaDwyTGVuJGIqYVRYPS04UXhOKWsxMUlNMWNeaiU5czxMPE5GU28pQj8rPC0oR3hzRixeLUVoQCQ0ZFhoTiQrI3J4SzgnamUnRDdrYGU7KTJwWXdQQSdfcDkmQF4xOG1sMV5bQGc0dCpbSk9hKls9UXA3KHFKX29PTF4oJzdmQiZIcS06c2Ysc05qOHhxXj4kVTRPXUdLeCdtOSliQHA3WXN2SzN3XllSLUNkUSo6SXI8KCR1JikjKCY/TDlSZzNIKTRmaUVwXmlJOU84S25UaixdSD9EKnI3J007UHdaOUswRV5rJi1jcEk7LnAvNl92d29GTVY8LT4jJVhpLkx4Vm5yVSg0JjgvUCs6aExTS2okI1UlXTQ5dCdJOnJnTWknRkxAYTowWS11QVszOScsKHZibWEqaFUlPC1TUkZgVHQ6NTQyUl9WViRwQFtwOERWW0EsPzE4MzlGV2RGPFRkZEY8OUFoLTYmOXRXb0RsaF0mMVNwR01xPlRpMU8qSCYjKEFMOFtfUCUuTT52Xi0pKXFPVCpGNUNxMGBZZSUrJEI2aTo3QDBJWDxOK1QrME1sTUJQUSpWaj5Tc0Q8VTRKSFk4a0QyKTJmVS9NIyRlLilUNCxfPThoTGltWyYpOz9Va0snLXg/Jyg6c2lJZkw8JHBGTWBpPD8lVyhtR0RITSU+aVdQLCMjUGAlL0w8ZVhpOkBaOUMuN289QChwWGRBTy9OTFE4bFBsK0hQT1FhOHdEOD1eR2xQYThUS0kxQ2poc0NUU0xKTScvV2w+LVMocXclc2YvQCUjQjY7L1U3S111WmJpXk9jXjJuPGJoUG1Va013PiV0PCknbUVWRScnbmBXbkpyYSReVEt2WDVCPjtfYVNFSycsKGh3YTA6aTRHPy5CY2kuKFhbP2IqKCQsPS1uPC5RJWAoWD0/K0BBbSpKczAmPTNiaDhLXW1MPExvTnMnNiwnODVgMD90LydfVTU5QF1kZEY8I0xkRjxlV2RGPE91Ti80NXJZPC1MQCYjK2ZtPjY5PUxiLE9jWlYvKTtUVG04Vkk7PyVPdEo8KGI0bXE3TTY6dT9LUmRGPGdSQDJMPUZOVS08YlsoOWMvTUwzbTtaWyRvRjNnKUdBV3FwQVJjPTxST3U3Y0w1bDstW0FdJS8rZnNkO2wjU2FmVC9mKlddMD1PJyQoVGI8WykqQGU3NzVSLTpZb2IlZyo+bCo6eFA/WWIuNSkld19JPzd1azVKQytGUyhtI2knay4nYTBpKTk8N2InZnMnNTlocSQqNVVodiMjcGleOCtoSUVCRmBudm9gOydsMC5eUzE8LXdVSzIvQ29oNThLS2hMak09U08qcmZPYCtxQ2BXLU9uLj1BSjU2Pj5pMkAyTEg2QTomNXFgPzlJM0BAJzA0JnAyL0xWYSpULTQ8LWkzO005VXZaZCtONz5iKmVJd2c6Q0MpYzw+bk8mIzxJR2U7X18udGhqWmw8JXcoV2syeG1wNFFASSNJOSxERl11Ny1QPS4tXzpZSl1hU0BWPzYqQygpZE9wNzpXTCxiJjNSZy8uY21NOSZyXj4kKD4uWi1JJkooUTBIZDVRJTdDby1iYC1jPE4oNnJAaXArQXVySzxtODZRSXRoKiN2Oy1PQnFpK0w3d0RFLUlyOEtbJ20rRERTTHdLJi8uPy1WJVVfJTM6cUtOdSRfYipCLWtwN05hRCdRZFdRUEtZcVtAPlApaEk7Kl9GXXVgUmJbLmo4X1EvPCY+dXUrVnNIJHNNOVRBJT8pKHZtSjgwKSxQN0U+KXRqRCUyTD0tdCNmS1slYHY9UTg8RmZOa2dnXm9JYmFoKiM4L1F0JEYmOksqLShOLycrMXZNQix1KCktYS5WVVUqI1tlJWdBQU8oUz5XbEEyKTtTYT5nWG04WUJgMWRASyNuXTc2LWEkVSxtRjxmWF1pZHFkKTwzLF1KN0ptVzRgNl11a3M9NC03MkwoakVrKzpiSjBNXnEtOERtX1o/MG9sUDFDOVNhJkhbZCZjJG9vUVVqXUV4ZCozWk1ALVdHVzIlcycsQi1fTSU+JVVsOiMvJ3hvRk05UVgtJC5RTic+WyUkWiR1RjZwQTZLaTJPNTo4dyp2UDE8LTFgW0csKS1tIz4wYFAmI2ViIy4zaSlydEI2MShvJyQ/WDNCPC9SOTA7ZVpdJU5jcTstVGxdI0Y+MlFmdF5hZV81dEtMOU1VZTliKnNMRVE5NUMmYD1HP0BNaj13aConM0U+PS08KUd0Kkl3KSdRRzpgQEl3T2Y3Jl0xaSdTMDFCK0V2L05hYyM5Uzs9O1lRcGdfNlVgKmtWWTM5eEssWy82QWo3OicxQm0tXzFFWWZhMStvJm80aHA3S05fUShPbElvQFMlO2pWZG4wJzE8VmM1Mj11YDNeby1uMSdnNHY1OEhqJjZfdDckIyM/TSljPCRiZ1FfJ1NZKCgteGtBI1koLHAnSDlySVZZLWIsJyViQ1BGNy5KPFVwXiwoZFUxVlkqNSNXa1RVPmgxOXcsV1FoTEkpM1MjZiQyKGViLGpyKmI7M1Z3XSo3TkglJGM0VnMsZUQ5PlhXOD9OXW8rKCpwZ0MlLzcyTFYtdTxIcCwzQGVeOVVCMUorYWs5LVROL21oS1BnK0FKWWQkTWx2QUZfakNLKi5PLV4oNjNhZE1ULT5XJWlld1M4VzZtMnJ0Q3BvJ1JTMVI4ND1AcGFUS3QpPj0lJjFbKSp2cCd1K3gsVnJ3TjsmXWt1TzlKRGJnPXBPJEoqLmpWZTt1J20wZHI5bCw8KndNSypPZT1nOGxWX0tFQkZrTydvVV1ePVstNzkyI29rLClpXWxSOHFRMm9BOHdjUkNaXjd3L05qaDs/LnN0WD9RMT5TMXE0Qm4kKUsxPC1yR2RPJyRXci5MYy5DRykkLypKTDR0TlIvLFNWTzMsYVV3J0RKTjopU3M7d0duOUEzMmlqdyVGTCtaMEZuLlU5O3JlU3EpYm1JMzJVPT01QUx1RyYjVmYxMzk4L3BWbzEqYy0oYVkxNjhvPGBKc1Niay0sMU47JD4wOk9VYXMoMzo4Wjk3MkxTZkY4ZWI9Yy07PlNQdzcuNmhuM21gOV5Ya24oci5xU1swO1QlJlFjPStTVFJ4WCdxMUJOazMmKmV1MjsmOHEkJng+USNRN15UZis2PChkJVpWbWoyYkRpJS4zTDJuKzRXJyRQaURERylnLHIlKz8sJEA/dW91NXRTZTJhTl9BUVUqPGhgZS1HSTcpP09LMkEuZDdfYyk/d1E1QVNAREwzciM3ZlNrZ2w2LSsrRDonQSx1cTdTdmxCJHBjcEgncTNuMCNfJWRZI3hDcHItbDxGME5SQC0jI0ZFVjZOVEY2IyMkbDg0TjF3P0FPPidJQU9VUlEjI1ZeRnYtWEZiR003RmwoTjwzRGhMR0YlcS4xckMkIzpUX18mUGk2OCUweGlfJltxRkooNzdqXyZKV29GLlY3MzUmVCxbUio6eEZSKks1Pj4jYGJXLT80TmVfJjZOZV8mNk5lXyZuYGtyLSNHSmNNNlg7dU02WDt1TSguYS4uXjJUa0wlb1IoIzt1LlQlZkFyJTR0SjgmPjwxPUdIWl8rbTkvI0gxRl5SI1NDIypOPUJBOShEP3ZbVWlGWT4+XjhwLEtLRi5XXUwyOXVMa0xsdS8rNFQ8WG9JQiZoeD1UMVBjRGFCJjtISCstQUZyPyhtOUhaVilGS1M4SkN3O1NEPTZbXi9EWlVMYEVVRGZdR0dsRyY+dyQpRi4vXm4zK3JsbytEQjs1c0lZR05rK2kxdC02OUpnLS0wcGFvN1NtI0spcGRIVyY7THVETkhASD4jL1gtVEkoO1A+IyxHYz4jMFN1PiM0YDE/IzhsQz8jPHhVPyNALmk/I0Q6JUAjSEY3QCNMUklAI1BfW0AjVGtuQCNYdypBI10tPUEjYTlPQSNkPEYmIyo7RyMjLkdZIyMyU2wjIzZgKCQjOmw6JCM+eEwkI0IuYCQjRjpyJCNKRi4lI05SQCUjUl9SJSNWa2UlI1p3dyUjXy00JiMzXlJoJVNmbHItaydNUy5vPy41L3NXZWwvd3BFTTAlMycvMSlLXmYxLWQ+RzIxJnYoMzU+VmAzOVY3QTQ9b254NEExT1k1RUkwOzZJYmdyNk0kSFM3UTwpNThDNXcsO1dvQSojWyVUKiNgMWcqI2Q9IysjaEk1KyNsVUcrI3BiWSsjdG5sKyN4JCksIyYxOywjKj1NLCMuSWAsIzJVciwjNmIuLSM7d1tII2lRdEEjbV4wQiNxakJCI3V2VEIjIy1oQiMnOSRDIytFNkMjL1FIQyMzXlpDIzdqbUMjO3YpRCM/LDxEI0M4TkQjR0RhRCNLUHNEI09dL0UjZzFBNSNLQSoxI2dDMTcjTUdkOyM4KDAyI0wtZDMjcldNNCNIZ2ExIyw8dzAjVC5qPCNPIycyI0NZTjEjcWFeOiNfNG0zI29ALz0jZUc4PSN0OEo1I2ArNzgjNHVJLSNtM0IyI1NCWzgjUTBAOCNpWyo5I2lPbjgjMU5tOyNec045I3FoPDkjOj14LSNQO0syIyQlWDkjYkMrLiNSZzs8I21OPS4jTVRGLiNSWk8uIzI/KTQjWSMoLyNbKTEvI2I7TC8jZEFVLyMwU3Y7I2xZJDAjbmAtMCNzZjYwIyhGMjQjd3JIMCMlL2UwI1RtRDwjJUpTTUZvdmU6Q1RCRVhJOjxlaDJnKUIsM2gyXkczaTsjZDNqRD4pNGtNWUQ0bFZ1YDRtYDomNW5pVUE1QChBNUJBMV1QQkI6eGxCQ0M9MkNETFhNQ0VVdGlDZiYwZzIndE4/UEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQR1Q0Q1BHVDRDUEdUNENQLXFla0NgLjlrRWdeK0Yka3dWaUZKVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVLVEImNUtUQiY1S1RCJjVvLF48LTI4WkknTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cE8/O3hwTz87eHBPPzt4cDs3cS0jbExZSTp4dkQ9IwBmb250X2NmZy5Gb250RGF0YSA9PSAwTABBZGRGb250RnJvbU1lbW9yeUNvbXByZXNzZWRUVEYAQWRkRm9udEZyb21NZW1vcnlUVEYAZm9udF9jZmctPkZvbnREYXRhICE9IDBMICYmIGZvbnRfY2ZnLT5Gb250RGF0YVNpemUgPiAwAEFkZEZvbnQAZm9udF9jZmctPlNpemVQaXhlbHMgPiAwLjBmACFGb250cy5lbXB0eSgpAHN0Yl9fZG91dCA9PSBvdXRwdXQgKyBvbGVuAHN0Yl9kZWNvbXByZXNzAHN0Yl9fZG91dCA8PSBvdXRwdXQgKyBvbGVuAHN0Yl9fZG91dCArIGxlbmd0aCA8PSBzdGJfX2JhcnJpZXIAc3RiX19saXQAc3RiX19tYXRjaABHZXRNb3VzZUN1cnNvclRleERhdGEAMS42MCBXSVAASU1HVUlfVkVSU0lPTgBJbURyYXdWZXJ0U2l6ZQBJbURyYXdJZHhTaXplAEltRHJhd1ZlcnRQb3NPZmZzZXQASW1EcmF3VmVydFVWT2Zmc2V0AEltRHJhd1ZlcnRDb2xPZmZzZXQAQ3JlYXRlQ29udGV4dABEZXN0cm95Q29udGV4dABHZXRDdXJyZW50Q29udGV4dABTZXRDdXJyZW50Q29udGV4dABHZXRJTwBHZXRTdHlsZQBHZXREcmF3RGF0YQBOZXdGcmFtZQBSZW5kZXIARW5kRnJhbWUAU2hvd0RlbW9XaW5kb3cAU2hvd01ldHJpY3NXaW5kb3cAU2hvd1N0eWxlRWRpdG9yAFNob3dTdHlsZVNlbGVjdG9yAFNob3dGb250U2VsZWN0b3IAU2hvd1VzZXJHdWlkZQBHZXRWZXJzaW9uAFN0eWxlQ29sb3JzRGFyawBTdHlsZUNvbG9yc0NsYXNzaWMAU3R5bGVDb2xvcnNMaWdodABCZWdpbgBFbmQAQmVnaW5DaGlsZABFbmRDaGlsZABHZXRDb250ZW50UmVnaW9uTWF4AEdldENvbnRlbnRSZWdpb25BdmFpbABHZXRDb250ZW50UmVnaW9uQXZhaWxXaWR0aABHZXRXaW5kb3dDb250ZW50UmVnaW9uTWluAEdldFdpbmRvd0NvbnRlbnRSZWdpb25NYXgAR2V0V2luZG93Q29udGVudFJlZ2lvbldpZHRoAEdldFdpbmRvd0RyYXdMaXN0AEdldFdpbmRvd1BvcwBHZXRXaW5kb3dTaXplAEdldFdpbmRvd1dpZHRoAEdldFdpbmRvd0hlaWdodABJc1dpbmRvd0NvbGxhcHNlZABJc1dpbmRvd0FwcGVhcmluZwBTZXRXaW5kb3dGb250U2NhbGUAU2V0TmV4dFdpbmRvd1BvcwBTZXROZXh0V2luZG93U2l6ZQBTZXROZXh0V2luZG93U2l6ZUNvbnN0cmFpbnRzAFNldE5leHRXaW5kb3dDb250ZW50U2l6ZQBTZXROZXh0V2luZG93Q29sbGFwc2VkAFNldE5leHRXaW5kb3dGb2N1cwBTZXROZXh0V2luZG93QmdBbHBoYQBTZXRXaW5kb3dQb3MAU2V0V2luZG93U2l6ZQBTZXRXaW5kb3dDb2xsYXBzZWQAU2V0V2luZG93Rm9jdXMAU2V0V2luZG93TmFtZVBvcwBTZXRXaW5kb3dOYW1lU2l6ZQBTZXRXaW5kb3dOYW1lQ29sbGFwc2VkAFNldFdpbmRvd05hbWVGb2N1cwBHZXRTY3JvbGxYAEdldFNjcm9sbFkAR2V0U2Nyb2xsTWF4WABHZXRTY3JvbGxNYXhZAFNldFNjcm9sbFgAU2V0U2Nyb2xsWQBTZXRTY3JvbGxIZXJlAFNldFNjcm9sbEZyb21Qb3NZAFNldFN0YXRlU3RvcmFnZQBHZXRTdGF0ZVN0b3JhZ2UAUHVzaEZvbnQAUG9wRm9udABQdXNoU3R5bGVDb2xvcgBQb3BTdHlsZUNvbG9yAFB1c2hTdHlsZVZhcgBQb3BTdHlsZVZhcgBHZXRTdHlsZUNvbG9yVmVjNABHZXRGb250AEdldEZvbnRTaXplAEdldEZvbnRUZXhVdldoaXRlUGl4ZWwAR2V0Q29sb3JVMzIAUHVzaEl0ZW1XaWR0aABQb3BJdGVtV2lkdGgAQ2FsY0l0ZW1XaWR0aABQdXNoVGV4dFdyYXBQb3MAUG9wVGV4dFdyYXBQb3MAUHVzaEFsbG93S2V5Ym9hcmRGb2N1cwBQb3BBbGxvd0tleWJvYXJkRm9jdXMAUHVzaEJ1dHRvblJlcGVhdABQb3BCdXR0b25SZXBlYXQAU2VwYXJhdG9yAFNhbWVMaW5lAE5ld0xpbmUAU3BhY2luZwBEdW1teQBJbmRlbnQAVW5pbmRlbnQAQmVnaW5Hcm91cABFbmRHcm91cABHZXRDdXJzb3JQb3MAR2V0Q3Vyc29yUG9zWABHZXRDdXJzb3JQb3NZAFNldEN1cnNvclBvcwBTZXRDdXJzb3JQb3NYAFNldEN1cnNvclBvc1kAR2V0Q3Vyc29yU3RhcnRQb3MAR2V0Q3Vyc29yU2NyZWVuUG9zAFNldEN1cnNvclNjcmVlblBvcwBBbGlnblRleHRUb0ZyYW1lUGFkZGluZwBHZXRUZXh0TGluZUhlaWdodABHZXRUZXh0TGluZUhlaWdodFdpdGhTcGFjaW5nAEdldEZyYW1lSGVpZ2h0AEdldEZyYW1lSGVpZ2h0V2l0aFNwYWNpbmcAQ29sdW1ucwBOZXh0Q29sdW1uAEdldENvbHVtbkluZGV4AEdldENvbHVtbldpZHRoAFNldENvbHVtbldpZHRoAEdldENvbHVtbk9mZnNldABTZXRDb2x1bW5PZmZzZXQAR2V0Q29sdW1uc0NvdW50AFB1c2hJRABQb3BJRABHZXRJRABUZXh0VW5mb3JtYXR0ZWQAVGV4dABUZXh0VgBUZXh0Q29sb3JlZABUZXh0Q29sb3JlZFYAVGV4dERpc2FibGVkAFRleHREaXNhYmxlZFYAVGV4dFdyYXBwZWQAVGV4dFdyYXBwZWRWAExhYmVsVGV4dABMYWJlbFRleHRWAEJ1bGxldFRleHQAQnVsbGV0VGV4dFYAQnVsbGV0AEJ1dHRvbgBTbWFsbEJ1dHRvbgBJbnZpc2libGVCdXR0b24ASW1hZ2UASW1hZ2VCdXR0b24AQ2hlY2tib3gAQ2hlY2tib3hGbGFncwBSYWRpb0J1dHRvbgBQbG90TGluZXMAUGxvdEhpc3RvZ3JhbQBQcm9ncmVzc0JhcgBCZWdpbkNvbWJvAEVuZENvbWJvAENvbWJvAERyYWdGbG9hdABEcmFnRmxvYXQyAERyYWdGbG9hdDMARHJhZ0Zsb2F0NABEcmFnRmxvYXRSYW5nZTIARHJhZ0ludABEcmFnSW50MgBEcmFnSW50MwBEcmFnSW50NABEcmFnSW50UmFuZ2UyAElucHV0VGV4dABJbnB1dFRleHRNdWx0aWxpbmUASW5wdXRGbG9hdABJbnB1dEZsb2F0MgBJbnB1dEZsb2F0MwBJbnB1dEZsb2F0NABJbnB1dEludABJbnB1dEludDIASW5wdXRJbnQzAElucHV0SW50NABTbGlkZXJGbG9hdABTbGlkZXJGbG9hdDIAU2xpZGVyRmxvYXQzAFNsaWRlckZsb2F0NABTbGlkZXJBbmdsZQBTbGlkZXJJbnQAU2xpZGVySW50MgBTbGlkZXJJbnQzAFNsaWRlckludDQAVlNsaWRlckZsb2F0AFZTbGlkZXJJbnQAQ29sb3JFZGl0MwBDb2xvckVkaXQ0AENvbG9yUGlja2VyMwBDb2xvclBpY2tlcjQAQ29sb3JCdXR0b24AU2V0Q29sb3JFZGl0T3B0aW9ucwBUcmVlTm9kZQBUcmVlTm9kZUV4AFRyZWVQdXNoAFRyZWVQb3AAVHJlZUFkdmFuY2VUb0xhYmVsUG9zAEdldFRyZWVOb2RlVG9MYWJlbFNwYWNpbmcAU2V0TmV4dFRyZWVOb2RlT3BlbgBDb2xsYXBzaW5nSGVhZGVyAFNlbGVjdGFibGUATGlzdEJveABMaXN0Qm94SGVhZGVyAExpc3RCb3hGb290ZXIAVmFsdWUAU2V0VG9vbHRpcABCZWdpblRvb2x0aXAARW5kVG9vbHRpcABCZWdpbk1haW5NZW51QmFyAEVuZE1haW5NZW51QmFyAEJlZ2luTWVudUJhcgBFbmRNZW51QmFyAEJlZ2luTWVudQBFbmRNZW51AE1lbnVJdGVtAE9wZW5Qb3B1cABPcGVuUG9wdXBPbkl0ZW1DbGljawBCZWdpblBvcHVwAEJlZ2luUG9wdXBNb2RhbABCZWdpblBvcHVwQ29udGV4dEl0ZW0AQmVnaW5Qb3B1cENvbnRleHRXaW5kb3cAQmVnaW5Qb3B1cENvbnRleHRWb2lkAEVuZFBvcHVwAElzUG9wdXBPcGVuAENsb3NlQ3VycmVudFBvcHVwAExvZ1RvVFRZAExvZ1RvRmlsZQBMb2dUb0NsaXBib2FyZABMb2dGaW5pc2gATG9nQnV0dG9ucwBMb2dUZXh0AEJlZ2luRHJhZ0Ryb3BTb3VyY2UAU2V0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wU291cmNlAEJlZ2luRHJhZ0Ryb3BUYXJnZXQAQWNjZXB0RHJhZ0Ryb3BQYXlsb2FkAEVuZERyYWdEcm9wVGFyZ2V0AFB1c2hDbGlwUmVjdABQb3BDbGlwUmVjdABTZXRJdGVtRGVmYXVsdEZvY3VzAFNldEtleWJvYXJkRm9jdXNIZXJlAElzSXRlbUhvdmVyZWQASXNJdGVtQWN0aXZlAElzSXRlbUZvY3VzZWQASXNJdGVtQ2xpY2tlZABJc0l0ZW1WaXNpYmxlAElzQW55SXRlbUhvdmVyZWQASXNBbnlJdGVtQWN0aXZlAElzQW55SXRlbUZvY3VzZWQAR2V0SXRlbVJlY3RNaW4AR2V0SXRlbVJlY3RNYXgAR2V0SXRlbVJlY3RTaXplAFNldEl0ZW1BbGxvd092ZXJsYXAASXNXaW5kb3dGb2N1c2VkAElzV2luZG93SG92ZXJlZABJc1JlY3RWaXNpYmxlAEdldFRpbWUAR2V0RnJhbWVDb3VudABHZXRPdmVybGF5RHJhd0xpc3QAR2V0RHJhd0xpc3RTaGFyZWREYXRhAEdldFN0eWxlQ29sb3JOYW1lAENhbGNUZXh0U2l6ZQBDYWxjTGlzdENsaXBwaW5nAEJlZ2luQ2hpbGRGcmFtZQBFbmRDaGlsZEZyYW1lAENvbG9yQ29udmVydFUzMlRvRmxvYXQ0AENvbG9yQ29udmVydEZsb2F0NFRvVTMyAENvbG9yQ29udmVydFJHQnRvSFNWAENvbG9yQ29udmVydEhTVnRvUkdCAEdldEtleUluZGV4AElzS2V5RG93bgBJc0tleVByZXNzZWQASXNLZXlSZWxlYXNlZABHZXRLZXlQcmVzc2VkQW1vdW50AElzTW91c2VEb3duAElzQW55TW91c2VEb3duAElzTW91c2VDbGlja2VkAElzTW91c2VEb3VibGVDbGlja2VkAElzTW91c2VSZWxlYXNlZABJc01vdXNlRHJhZ2dpbmcASXNNb3VzZUhvdmVyaW5nUmVjdABJc01vdXNlUG9zVmFsaWQAR2V0TW91c2VQb3MAR2V0TW91c2VQb3NPbk9wZW5pbmdDdXJyZW50UG9wdXAAR2V0TW91c2VEcmFnRGVsdGEAUmVzZXRNb3VzZURyYWdEZWx0YQBHZXRNb3VzZUN1cnNvcgBTZXRNb3VzZUN1cnNvcgBDYXB0dXJlS2V5Ym9hcmRGcm9tQXBwAENhcHR1cmVNb3VzZUZyb21BcHAATWVtQWxsb2MATWVtRnJlZQBHZXRDbGlwYm9hcmRUZXh0AFNldENsaXBib2FyZFRleHQATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWZpAHgAeQBpaWlpaQBpaWlmAGlpaWZmAGlpaWkAdmlmZmZpaWkANkltVmVjNAB6AHcANkltVmVjMgB2aWlmaWkAaWlpaWlmaQBQMjBJbURyYXdMaXN0U2hhcmVkRGF0YQAyMEltRHJhd0xpc3RTaGFyZWREYXRhAFAxMEltRHJhd0xpc3QAMTBJbURyYXdMaXN0AHZpaWlpAFRPRE86ICVzCgBhdXRvIEVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWk6OkVtc2NyaXB0ZW5CaW5kaW5nSW5pdGlhbGl6ZXJfSW1HdWkoKTo6KGFub255bW91cyBjbGFzcyk6Om9wZXJhdG9yKCkoc3RkOjpzdHJpbmcsIEltR3VpRHJhZ0Ryb3BGbGFncykgY29uc3QAaWlpaWlpAGF1dG8gRW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aTo6RW1zY3JpcHRlbkJpbmRpbmdJbml0aWFsaXplcl9JbUd1aSgpOjooYW5vbnltb3VzIGNsYXNzKTo6b3BlcmF0b3IoKShzdGQ6OnN0cmluZywgZW1zY3JpcHRlbjo6dmFsLCBzaXplX3QsIEltR3VpQ29uZCkgY29uc3QAJXMAdmlpaQBib29sZWFuAG51bWJlcgBzdHJpbmcAaWlpaWlpaWkAaWlpaWlmZmlmAGlpaWlpaWkAaWlpaWZmAGlpaWlmZmlmAGlpaWlmZmlpAGlpaWlpaWlpaQBVc2VyRGF0YQBQMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhADI1SW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBpaWlpaWZmZmlpAGlpaWlmaWlpAGlpaWlpZmZmaWlmAGlpaWlmZmZpZgB2aWZpaQB2aWlpaWlpaWlpaQB2aWlpaWlpaQB2aWlmAGZpaQBpaQB2aWkAUDZJbUZvbnQANkltRm9udABQSzZJbVZlYzQAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKCkgY29uc3QAYXV0byBFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpOjpFbXNjcmlwdGVuQmluZGluZ0luaXRpYWxpemVyX0ltR3VpKCk6Oihhbm9ueW1vdXMgY2xhc3MpOjpvcGVyYXRvcigpKGVtc2NyaXB0ZW46OnZhbCkgY29uc3QAdmlmZgB2aWlpaWkAUDIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhADIxSW1HdWlTaXplQ2FsbGJhY2tEYXRhAHZpZgBmaQBQMTBJbUd1aVN0eWxlADEwSW1HdWlTdHlsZQB2aQBQMTBJbURyYXdEYXRhADEwSW1EcmF3RGF0YQBQN0ltR3VpSU8AN0ltR3VpSU8AUDEySW1HdWlDb250ZXh0ADEySW1HdWlDb250ZXh0AEltR3VpQ29udGV4dAAxM0ltR3VpQ29udGV4dF8AdgBQSzEzSW1HdWlDb250ZXh0XwBQMTNJbUd1aUNvbnRleHRfAEltR3VpU3R5bGUAQWxwaGEAZ2V0V2luZG93UGFkZGluZwBXaW5kb3dSb3VuZGluZwBXaW5kb3dCb3JkZXJTaXplAGdldFdpbmRvd01pblNpemUAZ2V0V2luZG93VGl0bGVBbGlnbgBDaGlsZFJvdW5kaW5nAENoaWxkQm9yZGVyU2l6ZQBQb3B1cFJvdW5kaW5nAFBvcHVwQm9yZGVyU2l6ZQBnZXRGcmFtZVBhZGRpbmcARnJhbWVSb3VuZGluZwBGcmFtZUJvcmRlclNpemUAZ2V0SXRlbVNwYWNpbmcAZ2V0SXRlbUlubmVyU3BhY2luZwBnZXRUb3VjaEV4dHJhUGFkZGluZwBJbmRlbnRTcGFjaW5nAENvbHVtbnNNaW5TcGFjaW5nAFNjcm9sbGJhclNpemUAU2Nyb2xsYmFyUm91bmRpbmcAR3JhYk1pblNpemUAR3JhYlJvdW5kaW5nAGdldEJ1dHRvblRleHRBbGlnbgBnZXREaXNwbGF5V2luZG93UGFkZGluZwBnZXREaXNwbGF5U2FmZUFyZWFQYWRkaW5nAE1vdXNlQ3Vyc29yU2NhbGUAQW50aUFsaWFzZWRMaW5lcwBBbnRpQWxpYXNlZEZpbGwAQ3VydmVUZXNzZWxsYXRpb25Ub2wAZ2V0Q29sb3JzQXQAc2V0Q29sb3JzQXQAU2NhbGVBbGxTaXplcwBQNkltVmVjNABQNkltVmVjMgBQSzEwSW1HdWlTdHlsZQBJbUd1aUlPAGdldERpc3BsYXlTaXplAERlbHRhVGltZQBOYXZGbGFncwBnZXRLZXlNYXBBdABzZXRLZXlNYXBBdABnZXRGb250cwBGb250R2xvYmFsU2NhbGUAZ2V0RGlzcGxheUZyYW1lYnVmZmVyU2NhbGUAZ2V0TW91c2VQb3MAZ2V0TW91c2VEb3duQXQAc2V0TW91c2VEb3duQXQATW91c2VXaGVlbABNb3VzZURyYXdDdXJzb3IAS2V5Q3RybABLZXlTaGlmdABLZXlBbHQAS2V5U3VwZXIAZ2V0S2V5c0Rvd25BdABzZXRLZXlzRG93bkF0AGdldE5hdklucHV0c0F0AHNldE5hdklucHV0c0F0AEFkZElucHV0Q2hhcmFjdGVyAFdhbnRDYXB0dXJlTW91c2UAV2FudENhcHR1cmVLZXlib2FyZABXYW50VGV4dElucHV0AFdhbnRNb3ZlTW91c2UATmF2QWN0aXZlAE5hdlZpc2libGUARnJhbWVyYXRlAGdldE1vdXNlRGVsdGEAZ2V0TW91c2VDbGlja2VkUG9zQXQAZ2V0TW91c2VEb3duRHVyYXRpb25BdABnZXRLZXlzRG93bkR1cmF0aW9uQXQAZ2V0TmF2SW5wdXRzRG93bkR1cmF0aW9uQXQAUEs3SW1HdWlJTwBQSzZJbVZlYzIAaWlpaWYAZmlpaQBQMTFJbUZvbnRBdGxhcwAxMUltRm9udEF0bGFzAEltRm9udEF0bGFzAEdldFRleERhdGFBc1JHQkEzMgBnZXRUZXhJRABzZXRUZXhJRABUZXhXaWR0aABUZXhIZWlnaHQAUEsxMUltRm9udEF0bGFzAHBpeGVscwB3aWR0aABoZWlnaHQATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAEltRm9udABHZXREZWJ1Z05hbWUAPHVua25vd24+AFBLNkltRm9udABJbURyYXdEYXRhAEl0ZXJhdGVEcmF3TGlzdHMAVmFsaWQAQ21kTGlzdHNDb3VudABUb3RhbFZ0eENvdW50AFRvdGFsSWR4Q291bnQAU2NhbGVDbGlwUmVjdHMAUEsxMEltRHJhd0RhdGEAUEsxMEltRHJhd0xpc3QASW1EcmF3TGlzdABJdGVyYXRlRHJhd0NtZHMASWR4QnVmZmVyAFZ0eEJ1ZmZlcgBQdXNoQ2xpcFJlY3RGdWxsU2NyZWVuAEFkZExpbmUAQWRkUmVjdABBZGRSZWN0RmlsbGVkAEFkZFJlY3RGaWxsZWRNdWx0aUNvbG9yAEFkZFF1YWQAQWRkUXVhZEZpbGxlZABBZGRUcmlhbmdsZQBBZGRUcmlhbmdsZUZpbGxlZABBZGRDaXJjbGUAQWRkQ2lyY2xlRmlsbGVkAEFkZFRleHQAQWRkVGV4dF9Gb250AEFkZEJlemllckN1cnZlAHZpaWlpaWlpZmkAdmlpaWZpaWlpZmkAdmlpaWZpaQB2aWlpZmlpZgB2aWlpaWlpAHZpaWlpaWlmAHZpaWlpaWlpZgB2aWlpaWlpaWkAdmlpaWlpZmkAdmlpaWlpZmlmAHZpaWlpaWYATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAFNpemUgPiAwAGltZ3VpL2ltZ3VpLmgAZnJvbnQAUEs5SW1EcmF3Q21kADlJbURyYXdDbWQASW1EcmF3Q21kAEVsZW1Db3VudABnZXRDbGlwUmVjdABUZXh0dXJlSWQAUDlJbURyYXdDbWQASW1HdWlMaXN0Q2xpcHBlcgBTdGFydFBvc1kASXRlbXNIZWlnaHQASXRlbXNDb3VudABTdGVwTm8ARGlzcGxheVN0YXJ0AERpc3BsYXlFbmQAU3RlcABQMTZJbUd1aUxpc3RDbGlwcGVyADE2SW1HdWlMaXN0Q2xpcHBlcgB2aWlpZgBQSzE2SW1HdWlMaXN0Q2xpcHBlcgBJbUd1aVNpemVDYWxsYmFja0RhdGEAZ2V0UG9zAGdldEN1cnJlbnRTaXplAGdldERlc2lyZWRTaXplAFBLMjFJbUd1aVNpemVDYWxsYmFja0RhdGEASW1HdWlUZXh0RWRpdENhbGxiYWNrRGF0YQBFdmVudEZsYWcARmxhZ3MAUmVhZE9ubHkARXZlbnRDaGFyAEV2ZW50S2V5AGdldEJ1ZgBzZXRCdWYAQnVmVGV4dExlbgBCdWZTaXplAEJ1ZkRpcnR5AEN1cnNvclBvcwBTZWxlY3Rpb25TdGFydABTZWxlY3Rpb25FbmQARGVsZXRlQ2hhcnMASW5zZXJ0Q2hhcnMASGFzU2VsZWN0aW9uAFBLMjVJbUd1aVRleHRFZGl0Q2FsbGJhY2tEYXRhAEltVmVjNABDb3B5AEVxdWFscwBpaWZmZmYASW1WZWMyAGlpZmYAbWFsbGluZm8AYXJlbmEAb3JkYmxrcwBzbWJsa3MAaGJsa3MAaGJsa2hkAHVzbWJsa3MAZnNtYmxrcwB1b3JkYmxrcwBmb3JkYmxrcwBrZWVwY29zdAB2b2lkAGJvb2wAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4ATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAZG91YmxlAGZsb2F0AHVuc2lnbmVkIGxvbmcAbG9uZwB1bnNpZ25lZCBpbnQAaW50AHVuc2lnbmVkIHNob3J0AHNob3J0AHVuc2lnbmVkIGNoYXIAc2lnbmVkIGNoYXIAY2hhcgD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABpbmZpbml0eQBuYW4AcndhAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AFB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"])}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i>2];info.adjusted=thrown;return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(setTempRet0(throwntype),thrown)|0}function ___gxx_personality_v0(){}function ___lock(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffers){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=value;return value}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);rawInvoker=embind__requireFunction(signature,rawInvoker);exposePublicSymbol(name,(function(){throwUnboundTypeError("Cannot call "+name+" due to unbound types",argTypes)}),argCount-1);whenDependentTypesAreResolved([],argTypes,(function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn),argCount-1);return[]}))}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var a=new Array(length);for(var i=0;i>2]=length;for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i>2]=length;var start=ptr+4>>shift;for(var i=0;i>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i4){emval_handle_array[handle].refcount+=1}}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function __emval_typeof(handle){handle=requireHandle(handle);return __emval_register(typeof handle)}function _abort(){Module["abort"]()}var _llvm_fabs_f32=Math_abs;var _llvm_fabs_f64=Math_abs;var _llvm_pow_f32=Math_pow;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;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(i>2]=0.0;nt(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];nt(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+ot(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){nt(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){nt(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;zp(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function ot(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(vt(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Ap(c[(c[244]|0)+5928>>2]|0,a);e=c[244]|0;f=f*(+g[e+5932>>2]/+g[c[e+5928>>2]>>2])}return +f}function pt(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;At(b,c,d,e);at(b,d,e);a[c+15>>0]=0;return}function qt(a,c){a=a|0;c=c|0;return b[(Bt(a+4|0,c)|0)>>1]|0}function rt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=st(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function st(a,c){a=a|0;c=c|0;var d=0,e=0;tt(a);d=a+3186|0;if((b[d>>1]|0)==99)ut(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ut(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function tt(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ut(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;_aa(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;_aa(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function vt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1030,12749);return 0}function wt(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;_aa(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;_aa(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function xt(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function yt(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(zt(e[(vt(a,b+-1|0)|0)>>1]|0)|0)a=((zt(e[(vt(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function zt(a){a=a|0;a:do if(Bq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function At(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=rt(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=qt(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function Bt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Cb(12740,37262,1031,12749);return 0}function Ct(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function Dt(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=_s(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){nt(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+ot(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((qt(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function Et(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1031,12749);return 0}function Ft(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Gt(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Ht(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function It(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];df(f,+g[b>>2]+k,+g[d>>2]-j);df(h,+g[b>>2]+k,+g[d>>2]+j);Vv(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]-k);Vv(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]+j,+g[d>>2]+k);df(h,+g[b>>2]-j,+g[d>>2]+k);Vv(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];df(f,+g[b>>2]-j,+g[d>>2]-k);df(h,+g[b>>2]+j,+g[d>>2]-k);Vv(a,f,h,b,e);break}default:{}}l=i;return}function Jt(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Cb(12740,37262,1030,12749);return 0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ot(a,Pt(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Lt(a){a=a|0;Qt(a+44|0);Rt(a);return}function Mt(a){a=a|0;St(a+44|0);return}function Nt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Cb(37253,37262,1040,13011);return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qt(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Rt(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Tt(a+44|0);return}function St(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ut(a){a=a|0;return (c[a>>2]|0)==0|0}function Vt(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0;q=l;l=l+112|0;p=q+104|0;n=q+96|0;m=q+64|0;o=q+16|0;j=q;f=c[b>>2]|0;k=b+140|0;if(!(a[k>>0]|0))i=d[b+141>>0]|0;else i=1;c[j>>2]=e;c[j+4>>2]=f;c[j+8>>2]=i;c[j+12>>2]=b;if($n(b,12283,j)|0){ur(c[b+596>>2]|0);e=b+20|0;v=+g[b+24>>2];f=b+28|0;u=+g[f>>2];t=+g[b+32>>2];s=+g[b+52>>2];r=+g[b+56>>2];h[o>>3]=+g[e>>2];h[o+8>>3]=v;h[o+16>>3]=u;h[o+24>>3]=t;h[o+32>>3]=s;h[o+40>>3]=r;lo(12302,o);if(ih(0)|0){j=(c[244]|0)+6412|0;tf(o,e,f);Pv(j,e,o,-16711681,0.0,15,1.0)}s=+g[b+104>>2];t=+en(b);u=+g[b+108>>2];v=+gn(b);h[m>>3]=s;h[m+8>>3]=t;h[m+16>>3]=u;h[m+24>>3]=v;lo(12364,m);e=d[b+142>>0]|0;c[n>>2]=d[k>>0];c[n+4>>2]=e;lo(12394,n);e=c[b+604>>2]|0;if((e|0)!=(b|0))Vt(e,12424);e=b+300|0;if((c[e>>2]|0)>0)tr(e,12435);c[p>>2]=c[b+568>>2]<<3;lo(12448,p);kr()}l=q;return}function Wt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;cf(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Xt(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Yt(a){a=a|0;return c[a+8>>2]|0}function Zt(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function _t(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function $t(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function au(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function bu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function cu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function du(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function eu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function gu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function iu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ju(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lu(a,mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function ku(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*20|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/20|0;if((e|0)==(c[a+4>>2]|0)){lu(a,mu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*20|0)|0;_aa(f+20|0,f|0,(e-b|0)*20|0)|0}f=(c[g>>2]|0)+(b*20|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*20|0)|0}Cb(11501,37262,1065,11531);return 0}function lu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function uu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function vu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function wu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function yu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Au(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Bu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Cu(){Ye();Ze();Hk();return}function Du(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.699999988079071);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,.5);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.30000001192092896);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.1599999964237213);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5,.5,.8999999761581421,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,1.0,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Eu(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;f=a+148|0;Of(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.5,.5,.5,1.0);f=a+164|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+180|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,0.0);f=a+196|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+212|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,.4300000071525574,.4300000071525574,.5,.5);f=a+228|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+580|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.6000000238418579,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,0.0,.8999999761581421);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Fu(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(!a)a=Ah()|0;e=a+148|0;Of(b,0.0,0.0,0.0,1.0);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);e=a+164|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);e=a+180|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+196|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.9800000190734863);e=a+212|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,.30000001192092896);e=a+228|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,0.0,0.0,0.0,0.0);e=a+244|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,1.0);e=a+260|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+276|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+292|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);e=a+308|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);e=a+324|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,1.0,1.0,.5099999904632568);e=a+340|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);e=a+356|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);e=a+372|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);e=a+388|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);e=a+404|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);e=a+420|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+436|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);e=a+452|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);e=a+468|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+484|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+500|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+516|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+532|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+548|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+564|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+580|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+596|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+612|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+628|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+644|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+660|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+676|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+692|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+708|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+724|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+740|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+756|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,1.0,.44999998807907104,0.0,1.0);e=a+772|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+788|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+804|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];Of(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);a=a+820|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Gu(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;bf(a);b=a+20|0;cf(b);d=a+132|0;e=a+36|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;Of(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;df(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function Hu(a){a=a|0;Iu(a,0);op(a+12|0,0);Ju(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ku(a+60|0,0);Lu(a+72|0,0);Rs(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function Iu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Tu(a,Su(a,b)|0);c[a>>2]=b;return}function Ju(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ru(a,Qu(a,b)|0);c[a>>2]=b;return}function Ku(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Pu(a,Ou(a,b)|0);c[a>>2]=b;return}function Lu(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Nu(a,Mu(a,b)|0);c[a>>2]=b;return}function Mu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ou(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Qu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ru(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Su(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Uu(a){a=a|0;var b=0,d=0;Vu(a);Ai(a+12|0);Wu(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Xu(a+60|0);Yu(a+72|0);Zu(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=$u(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Vu($u(b,a)|0);Ai(($u(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}_u(b);return}function Vu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Wu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Xu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Yu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Zu(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function _u(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function $u(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function av(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;bv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){cv(a,e);l=f;return}Cb(12760,12849,353,12870)}function bv(a){a=a|0;cf(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function cv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Tu(a,Su(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function dv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?_7(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(_7(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Js(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)av(a);l=j;return}function ev(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Is(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((_7(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Js(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)av(a);return}function fv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;Of(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+gv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+gv(+g[m+4>>2],+g[e>>2]);hv(a+60|0,m);dv(a);l=n;return}function gv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function hv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Pu(a,Ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function iv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;df(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;df(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];fv(a,e,d,0);l=b;return}function jv(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){kv(b);dv(a);return}else Cb(12881,12849,440,33201)}function kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function lv(a,b){a=a|0;b=b|0;mv(a+72|0,b);ev(a);return}function mv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Nu(a,Mu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function nv(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){ov(b);ev(a);return}else Cb(12914,12849,453,12939)}function ov(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))qv(n,d);c[e>>2]=d;i=$u(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=$u(n,e)|0;if((e|0)<(k|0)){Iu(g,0);op(($u(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Lg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;rv(g)}if(!(c[($u(n,e)|0)>>2]|0)){bv(j);g=Ji(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(sv(b)|0)>>2];cv($u(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Cb(12952,12849,460,12997)}function qv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))uv(a,tv(a,b)|0);c[a>>2]=b;return}function rv(a){a=a|0;js(a);Vr(a+12|0);return}function sv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){wv(a,0);if(c[a>>2]|0?(c[(Is(a)|0)>>2]|0)==0:0)Js(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=$u(g,f)|0;if(c[e>>2]|0?(c[(Is(e)|0)>>2]|0)==0:0)Js(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}Iu(a,(c[a>>2]|0)+d|0);h=a+12|0;op(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=$u(h,g)|0;d=c[e>>2]|0;if(d){Zaa(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){Zaa(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}dv(a);c[j>>2]=1}return}function wv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Cb(13016,12849,527,13037);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function xv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Ju(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;op(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function yv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;df(o,+g[e>>2],+g[d+4>>2]);df(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function zv(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;df(q,+g[e>>2],+g[d+4>>2]);df(o,+g[d>>2],+g[e+4>>2]);df(p,+g[h>>2],+g[f+4>>2]);df(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function Av(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){xv(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;Bv(A,w,z);Dv(A,+Cv(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;xv(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;Bv(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);Dv(A,+Cv(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;Ev(w,v,r);Fv(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,s);Fv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;Ev(w,v,s);Bv(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;Ev(w,v,r);Bv(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;Ev(w,p,r);Fv(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,s);Fv(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;Ev(w,p,s);Bv(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;Ev(w,p,r);Bv(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Ev(w,A,r);Ev(t,A,s);I=d+(p<<3)|0;Fv(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Fv(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;Bv(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;Bv(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){Ev(w,v,1.0);Fv(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;Ev(w,v,1.0);Bv(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;Ev(w,H,1.0);Fv(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;Ev(w,H,1.0);Bv(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;Fv(w,v+(k<<3)|0,v+(p<<3)|0);Ev(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)Dv(A,i>100.0?100.0:i);Dv(A,1.0);u=d+(p<<3)|0;Fv(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;Bv(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function Cv(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function Dv(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function Ev(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function Fv(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function Gv(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;xv(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;xv(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){Bv(v,d+(j<<3)|0,d+(h<<3)|0);Dv(v,+Cv(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){Fv(w,p+(h<<3)|0,p+(j<<3)|0);Ev(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)Dv(v,q>100.0?100.0:q);Dv(v,.5);A=d+(j<<3)|0;Bv(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;Fv(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function Hv(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Ns(k,b);else{Os(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;df(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Ns(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function Iv(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Os(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;df(m,p,+g[h>>2]+ +F(+o)*d);Ns(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Ns(k,b);l=n;return}function Jv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Kv(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);df(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Ns(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Lv(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Kv(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Cb(37253,37262,1040,13011);return 0}function Lv(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Lv(a,b,c,t,s,d,e,f,g,j,m);Lv(a,f,g,o,p,q,r,h,i,j,m)}}else{df(m,h,i);Ns(a,m)}l=n;return}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Nv(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Nv(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){ij(a,b);df(j,+g[c>>2],+g[h>>2]);ij(a,j);ij(a,c);df(j,+g[b>>2],+g[f>>2]);ij(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;df(j,q+k,q+d);Hv(a,j,q,6,9);df(j,+g[c>>2]-p,p+ +g[h>>2]);Hv(a,j,p,9,12);df(j,+g[c>>2]-o,+g[f>>2]-o);Hv(a,j,o,0,3);df(j,n+ +g[b>>2],+g[f>>2]-n);Hv(a,j,n,3,6)}l=m;return}function Nv(a,b){a=+a;b=+b;return +(a>>0>=16777216){df(g,.5,.5);Fv(f,b,g);ij(a,f);df(g,.5,.5);Fv(f,c,g);ij(a,f);jj(a,d,0,e)}l=h;return}function Pv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){df(j,.5,.5);Fv(i,b,j);df(h,.5,.5);Bv(k,c,h);Mv(a,i,k,e,f);jj(a,d,1,g)}l=m;return}function Qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Mv(a,b,c,e,f);rl(a,d);break}else{xv(a,6,4);yv(a,b,c,d);break}while(0);return}function Rv(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;xv(a,6,4);n=a+48|0;Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+1&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,c[n>>2]&65535);Gt(a,(c[n>>2]|0)+2&65535);Gt(a,(c[n>>2]|0)+3&65535);Ht(a,b,j,e);df(k,+g[d>>2],+g[b+4>>2]);Ht(a,k,j,f);Ht(a,d,j,h);df(k,+g[b>>2],+g[d+4>>2]);Ht(a,k,j,i)}l=m;return}function Sv(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);jj(a,f,1,g)}return}function Tv(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(f>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);ij(a,e);rl(a,f)}return}function Uv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);jj(a,e,1,f)}return}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){ij(a,b);ij(a,c);ij(a,d);rl(a,e)}return}function Wv(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);Iv(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);jj(a,d,1,f)}return}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){Iv(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);rl(a,d)}return}function Yv(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){ij(a,b);Jv(a,c,d,e,h);jj(a,f,0,g)}return}function Zv(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(c8(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[c[b+68>>2]>>2]|0;if((m|0)!=(c[(sv(a+72|0)|0)>>2]|0))Cb(13056,12849,1104,37082);m=Ji(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+gv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+gv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Nv(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Nv(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];_v(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function _v(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(c8(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;xv(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=$v(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=aw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Hf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=bw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Ju(X,(m-(c[e+32>>2]|0)|0)/20|0);op(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=cw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function $v(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Hf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=Et(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(aw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function bw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(Bt(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function cw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Cb(12740,37262,1030,12749);return 0}function dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Zv(a,0,0.0,b,c,d,e,0.0,0);return}function ew(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(fw(j)|0)?(c[(sv(j)|0)>>2]|0)==(b|0):0){xv(a,6,4);zv(a,d,e,f,g,h);break}lv(a,i);xv(a,6,4);zv(a,d,e,f,g,h);nv(a)}while(0);l=k;return}function fw(a){a=a|0;return (c[a>>2]|0)==0|0}function gw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=cw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];Of(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function iw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;Bv(o,e,d);n=1.0/+jw(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{Bv(p,e,d);r=+gw(n*+kw(p,o),0.0,1.0);g=lw(i,j,r)|0;a=lw(k,m,r)|0;g=a<<8|g|(lw(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function jw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function kw(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function lw(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function mw(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;bf(f);d=b+40|0;bf(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;df(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;df(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function nw(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=a+28|0;bf(d);yr(a+36|0);ow(a+48|0);pw(a+60|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=1;e=a+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;df(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+72>>2]=-1;l=b;return}function ow(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function pw(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function qw(a){a=a|0;rw(a);sw(a+60|0);tw(a+48|0);Rr(a+36|0);return}function rw(a){a=a|0;uw(a);vw(a);ww(a);return}function sw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function tw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function uw(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+60|0;if((c[h>>2]|0)>0){e=0;do{if(c[(Dw(h,e)|0)>>2]|0?a[(Dw(h,e)|0)+8>>0]|0:0){_f(c[(Dw(h,e)|0)>>2]|0);c[(Dw(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+36|0;if((c[f>>2]|0)>0){g=d+68|0;e=0;do{i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Hh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Hh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}Ew(h);Fw(d+48|0);c[d+72>>2]=-1;return}function vw(a){a=a|0;var b=0,d=0;d=a+12|0;b=c[d>>2]|0;if(b|0)_f(b);a=a+16|0;b=c[a>>2]|0;if(b|0)_f(b);c[d>>2]=0;c[a>>2]=0;return}function ww(a){a=a|0;var b=0;b=a+36|0;if((c[b>>2]|0)>0){a=0;do{xw(Hh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}wi(b);return}function xw(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){yw(b);_f(c[a>>2]|0);c[a>>2]=0}return}function yw(a){a=a|0;zw(a);Wr(a+40|0);gs(a+28|0);Aw(a+16|0);return}function zw(a){a=a|0;var d=0;g[a>>2]=0.0;Bw(a+16|0);Cw(a+28|0);Ai(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function Aw(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Bw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Cw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Dw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ew(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Fw(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+12|0;g=c[h>>2]|0;if(!g){if(Hw(a+60|0)|0)Iw(a,0)|0;Jw(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+20>>2];if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=1;return}function Hw(a){a=a|0;return (c[a>>2]|0)==0|0}function Iw(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){mw(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=17770;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Vy(b,17792,e,i,4776)|0;l=j;return i|0}function Jw(a){a=a|0;return Kw(a)|0}function Kw(d){d=d|0;var f=0,h=0,i=0,j=0.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.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;U=l;l=l+352|0;D=U;M=U+88|0;N=U+84|0;P=U+80|0;Q=U+48|0;R=U+44|0;S=U+40|0;T=d+60|0;if((c[T>>2]|0)<=0)Cb(13110,12849,1631,13137);Lw(d);c[d>>2]=0;K=d+24|0;c[K>>2]=0;L=d+20|0;c[L>>2]=0;df(D,0.0,0.0);H=D;I=c[H+4>>2]|0;J=d+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;vw(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){h=(Dw(T,n)|0)+48|0;i=c[h>>2]|0;if(!i){c[h>>2]=4776;i=4776}k=b[i>>1]|0;a:do if(!(k<<16>>16))h=m;else{h=m;m=k;do{k=b[i+2>>1]|0;if(!(k<<16>>16))break a;h=h+1-(m&65535)+(k&65535)|0;i=i+4|0;f=f+1|0;m=b[i>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=h;w=f;break}else m=h}}else{x=0;w=0}f=c[d+4>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;h=D;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));Mw(D,f,c[d+8>>2]|0);Nw(D,1,1);v=D+4|0;Ow(d,c[v>>2]|0);J=Bf((c[T>>2]|0)*136|0)|0;b:do if((c[T>>2]|0)>0){k=0;while(1){i=Dw(T,k)|0;f=i+96|0;h=c[f>>2]|0;if(!h){I=18;break}if(Ih(h)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){I=18;break}h=c[i>>2]|0;f=Pw(h,c[i+12>>2]|0)|0;if((f|0)<=-1){I=20;break}if(!(Qw(J+(k*136|0)|0,h,f)|0)){I=22;break}k=k+1|0;if((k|0)>=(c[T>>2]|0)){I=23;break b}}if((I|0)==18)Cb(13169,12849,1680,13137);else if((I|0)==20)Cb(13251,12849,1683,13137);else if((I|0)==22){_f(J);o=0;break}}else I=23;while(0);if((I|0)==23){s=x*28|0;G=Bf(s)|0;t=x<<4;y=Bf(t)|0;u=w*24|0;H=Bf(u)|0;$aa(G|0,0,s|0)|0;$aa(y|0,0,t|0)|0;$aa(H|0,0,u|0)|0;c:do if((c[T>>2]|0)>0){i=0;s=0;o=0;u=0;while(1){t=Dw(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;d:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){h=b[n+2>>1]|0;if(!(h<<16>>16))break d;h=m+1-(f&65535)+(h&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=h;break}else m=h}}while(0);n=H+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){h=c[t+16>>2]|0;f=0;do{W=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=h;V=e[W>>1]|0;c[n+(f*24|0)+4>>2]=V;V=(e[W+2>>1]|0)-V+1|0;c[n+(f*24|0)+12>>2]=V;c[n+(f*24|0)+16>>2]=G+(i*28|0);i=V+i|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Nw(D,c[t+20>>2]|0,c[t+24>>2]|0);if((Rw(D,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Sw(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){h=c[f>>2]|0;f=0;do{if(c[h+(f<<4)+12>>2]|0)c[K>>2]=Tw(c[K>>2]|0,(e[h+(f<<4)+6>>1]|0)+(e[h+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=i;B=k;C=o;break c}else s=k}Cb(13268,12849,1731,13137)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Cb(13291,12849,1739,13137);if((z|0)!=(x|0))Cb(13325,12849,1740,13137);if((C|0)!=(w|0))Cb(13365,12849,1741,13137);o=Uw(c[K>>2]|0)|0;c[K>>2]=o;o=Bf(O(c[L>>2]|0,o)|0)|0;W=d+12|0;c[W>>2]=o;$aa(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=D+32|0;c[o>>2]=c[W>>2];c[D+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=D+16|0;n=0;do{W=Dw(T,n)|0;Nw(D,c[W+20>>2]|0,c[W+24>>2]|0);q=J+(n*136|0)+120|0;Ww(D,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);j=+g[W+60>>2];if(j!=1.0?(Xw(M,j),E=J+(n*136|0)+124|0,F=c[E>>2]|0,F|0):0){h=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;i=h;f=F;do{if(c[i+12>>2]|0){Yw(M,k,e[i+8>>1]|0,e[i+10>>1]|0,e[i+4>>1]|0,e[i+6>>1]|0,m);h=c[q>>2]|0;f=c[E>>2]|0}i=i+16|0}while((i|0)!=(h+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Vw(D);_f(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=Dw(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;j=+_w(B,+g[f+16>>2]);$w(B,M,N,P);ax(d,z,f,j*+(c[M>>2]|0),j*+(c[N>>2]|0));j=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;h=c[B>>2]|0;if((h|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=h;do{h=c[C>>2]|0;o=h+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=h+(p*24|0)+16|0;i=h+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){I=69;break}if(b[k+(f*28|0)+2>>1]|0){I=69;break}if(b[k+(f*28|0)+6>>1]|0)I=69}else I=69;while(0);do if((I|0)==69){I=0;h=(c[i>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(bw(z,h)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;bx(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);cx(z,h,j+ +g[Q>>2],A+ +g[s>>2],j+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}_f(G);_f(H);_f(J);Zw(d);o=1}l=U;return o|0}function Lw(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)<0)c[b>>2]=Qy(a,-2147483648,181,27)|0;return}function Mw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=Bf(48)|0;f=b-d|0;g=Bf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)_f(e);if(!i)_f(g)}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Oy(e,f,32768-d|0,g,f)}return}function Nw(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Cb(17559,16307,3427,17577);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Cb(17603,16307,3428,17577)}function Ow(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+48|0;if((c[h>>2]|0)<=0)Cb(17424,12849,1846,17445);Iy(g);Jy(g,c[h>>2]|0);$aa(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(jx(h,f)|0)+4>>1]|0;b[(Ky(g,f)|0)+4>>1]=j;j=b[(jx(h,f)|0)+6>>1]|0;b[(Ky(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Ky(g,0)|0;Sw(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+24|0;f=0;while(1){if(c[(Ky(g,f)|0)+12>>2]|0){j=b[(Ky(g,f)|0)+8>>1]|0;b[(jx(h,f)|0)+8>>1]=j;j=b[(Ky(g,f)|0)+10>>1]|0;b[(jx(h,f)|0)+10>>1]=j;j=b[(Ky(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+4>>1]|0))break;j=b[(Ky(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(jx(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Ky(g,f)|0)+10>>1]|0;c[a>>2]=Tw(d,(e[(Ky(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Cb(17477,12849,1862,17445)}while(0);Ly(g);l=i;return}function Pw(a,b){a=a|0;b=b|0;return Fy(a,b)|0}function Qw(a,b,c){a=a|0;b=b|0;c=c|0;return Dy(a,b,c)|0}function Rw(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+_w(e,j);else j=+tx(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=vx(e,k)|0;Cx(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Sw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));S7(d,e,16,3);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){zy(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));S7(d,e,16,4);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{S7(d,e,16,3);o=13}if((o|0)==13)S7(d,e,16,4);l=p;return}function Tw(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Uw(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Vw(a){a=a|0;_f(c[a+36>>2]|0);_f(c[a+4>>2]|0);return}function Ww(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+_w(f,k);else A=+tx(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ux(m);v=+ux(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=vx(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;wx(f,m,K,L);xx(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;yx(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;zx(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;Ax(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Xw(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Yw(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Zw(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;ix(a);k=a+48|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=jx(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;bf(d);bf(j);kx(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];cx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Cb(13400,12849,1918,13432)}while(0);a=a+36|0;if((c[a>>2]|0)>0){b=0;do{lx(c[(Hh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function _w(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(hx(a+4|0)|0)<<16>>16;return +(b/+(d-((hx(a+6|0)|0)<<16>>16)|0))}function $w(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function ax(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){zw(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function bx(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function cx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;dx(q,(c[q>>2]|0)+1|0);q=ex(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+24>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+20>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function dx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))gx(a,fx(a,b)|0);c[a>>2]=b;return}function ex(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function fx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function gx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function hx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function ix(d){d=d|0;var f=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,v=0,w=0;u=l;l=l+48|0;p=u+32|0;q=u+16|0;r=u+8|0;s=u;t=u+24|0;f=c[d+72>>2]|0;if((f|0)<=-1)Cb(13606,12849,1869,13635);f=jx(d+48|0,f)|0;if((c[f>>2]|0)!=-2147483648)Cb(13672,12849,1871,13635);if((b[f+4>>1]|0)!=181)Cb(13711,12849,1872,13635);if((b[f+6>>1]|0)!=27)Cb(13761,12849,1873,13635);if(!(rx(f)|0))Cb(13803,12849,1874,13635);m=d+12|0;if(!(c[m>>2]|0))Cb(13816,12849,1875,13635);o=f+8|0;n=f+10|0;k=d+20|0;f=0;i=0;while(1){h=0;j=f;while(1){v=h+(e[o>>1]|0)+(O(i+(e[n>>1]|0)|0,c[k>>2]|0)|0)|0;w=a[13845+j>>0]|0;a[(c[m>>2]|0)+v>>0]=(w<<24>>24==46)<<31>>31;a[(c[m>>2]|0)+(v+91)>>0]=(w<<24>>24==88)<<31>>31;h=h+1|0;if((h|0)==90)break;else j=j+1|0}i=i+1|0;if((i|0)==27)break;else f=f+90|0}df(p,1.0/+(c[k>>2]|0),1.0/+(c[d+24>>2]|0));df(q,+g[p>>2]*(+(e[o>>1]|0)+.5),+g[p+4>>2]*(+(e[n>>1]|0)+.5));v=q;w=c[v+4>>2]|0;f=d+28|0;c[f>>2]=c[v>>2];c[f+4>>2]=w;f=0;do{w=c[244]|0;df(r,+(e[o>>1]|0),+(e[n>>1]|0));Fv(q,1328+(f*24|0)|0,r);v=1328+(f*24|0)+8|0;m=c[v>>2]|0;v=c[v+4>>2]|0;d=r;c[d>>2]=m;c[d+4>>2]=v;c[w+6532+(f*52|0)>>2]=f;d=w+6532+(f*52|0)+12|0;c[d>>2]=m;c[d+4>>2]=v;d=1328+(f*24|0)+16|0;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+4|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+20|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;m=w+6532+(f*52|0)+36|0;c[m>>2]=c[d>>2];c[m+4>>2]=v;g[q>>2]=+g[q>>2]+91.0;sx(s,q,p);m=s;v=c[m+4>>2]|0;d=w+6532+(f*52|0)+28|0;c[d>>2]=c[m>>2];c[d+4>>2]=v;Fv(t,q,r);sx(s,t,p);d=s;v=c[d+4>>2]|0;w=w+6532+(f*52|0)+44|0;c[w>>2]=c[d>>2];c[w+4>>2]=v;f=f+1|0}while((f|0)!=7);l=u;return}function jx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function kx(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;j=l;l=l+16|0;g=j;h=a+20|0;if((c[h>>2]|0)>0?(i=a+24|0,(c[i>>2]|0)>0):0)if(rx(b)|0){k=b+8|0;a=b+10|0;df(g,+(e[k>>1]|0)/+(c[h>>2]|0),+(e[a>>1]|0)/+(c[i>>2]|0));n=g;m=c[n+4>>2]|0;c[d>>2]=c[n>>2];c[d+4>>2]=m;df(g,+((e[b+4>>1]|0)+(e[k>>1]|0)|0)/+(c[h>>2]|0),+((e[b+6>>1]|0)+(e[a>>1]|0)|0)/+(c[i>>2]|0));h=c[g+4>>2]|0;i=f;c[i>>2]=c[g>>2];c[i+4>>2]=h;l=j;return}else Cb(13589,12849,1602,13572);Cb(13542,12849,1601,13572)}function lx(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Tw(d,e[(mx(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Cb(13455,12849,2140,13476)}else o=0;m=a+28|0;Cw(m);k=a+40|0;Ai(k);n=o+1|0;nx(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(mx(l,d)|0)>>1]|0;i=c[(mx(l,d)|0)+4>>2]|0;c[(ox(m,j)|0)>>2]=i;b[(vt(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(bw(a,32)|0){if((b[(ex(l)|0)>>1]|0)!=9)dx(l,(c[l>>2]|0)+1|0);d=ex(l)|0;f=d;i=bw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(ox(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(vt(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=bw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(ox(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(ox(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function mx(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Cb(12740,37262,1030,12749);return 0}function nx(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Cb(13493,12849,2181,13532);if((h|0)<(d|0)){g[e>>2]=-1.0;px(f,d,e);b[e>>1]=-1;qx(a,d,e)}l=i;return}function ox(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function px(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function qx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))zu(a,Au(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function rx(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function sx(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function tx(a,b){a=a|0;b=+b;return +(b/+((Wx((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ux(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function vx(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=Wx(h)|0;a:do switch(a<<16>>16){case 0:{if((((Wx(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(Wx(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((Wx(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(Wx(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Cb(16777,16307,1346,17119);break}case 4:{k=Wx(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=Wx(h+12|0)|0;e=Wx(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((Wx(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=Wx(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((Wx(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((Wx(g+i|0)|0)&65535|0)<(b|0))Cb(17140,16307,1382,17119);h=h+14|0;g=j&65535;a=(Wx(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=Wx(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((hx(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=Wx(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Cb(16777,16307,1417,17119);i=h+16|0;a=Xx(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Xx(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Xx(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Xx(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function wx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(Wx(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(hx(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function xx(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;Cx(a,b,c,d,e,f,g,h);return}function yx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=Bx(a,i,j)|0;Cx(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;Dx(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}_f(a);l=p;return}function zx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Cb(16347,16307,3490,16362)}while(0);l=q;return}function Ax(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){$aa(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Cb(16276,16307,3552,16328)}while(0);l=q;return}function Bx(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=vy(a,b,d)|0;else a=wy(a,b,d)|0;return a|0}function Cx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Tx(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function Dx(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=Ex(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;Fx(a,b,j,c[i>>2]|0,e,f,g,h);_f(j);_f(b)}l=k;return}function Ex(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=Bf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=Bf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Qx(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Qx(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Rx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Sx(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}_f(0);_f(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function Fx(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=Bf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;Gx(v,k);Hx(a,v,k,i,j);_f(v)}return}function Gx(a,b){a=a|0;b=b|0;Ox(a,b);Px(a,b);return}function Hx(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=Bf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;$aa(x|0,0,i<<2|0)|0;$aa(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;Ix(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=Jx(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Kx(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Cb(16381,16307,2774,16394);else if((i|0)==17)Cb(16424,16307,2787,16394)}while(0);Lx(y);if((x|0)!=(z|0))_f(x);l=A;return}function Ix(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return}function Jx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Nx(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Cb(16714,16307,2373,16722);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Kx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Mx(z,0,e,u,f,u,x);break}else{q=~~u;Mx(a,q,e,u,f,u,x);Mx(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Mx(a,l,e,u,f,i,m);Mx(a,l,e,i,m,h,k);Mx(a,l,e,h,k,v,x);break}if(n&v>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(p&u>h){Mx(a,l,e,u,f,h,k);Mx(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Cb(16444,16307,2585,16459);else if((e|0)==11)Cb(16488,16307,2604,16459);else if((e|0)==17)Cb(16524,16307,2632,16459);else if((e|0)==25)Cb(16542,16307,2669,16459)}while(0);return}function Lx(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;_f(b)}while((a|0)!=0);return}function Mx(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Cb(16597,16307,2544,16570);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Cb(16622,16307,2559,16570)}if(j<=i){if(f<=i)break;Cb(16630,16307,2561,16570)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Cb(16648,16307,2565,16570)}else{if(f>=d)break;Cb(16638,16307,2563,16570)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Cb(16669,16307,2572,16570);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Nx(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=Bf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ox(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ox(a,e);a=h}else{Ox(h,b);b=e}}while((b|0)>12);l=n;return}function Px(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Qx(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Rx(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Rx(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Qx(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Sx(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Sx(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Qx(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Tx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Vx(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(hx((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(hx((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(hx((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(hx((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ux(a,b,d,e,f,g);b=1}return b|0}function Ux(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Yx(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Vx(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Cb(16740,16307,1439,16756);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((Wx(b)|0)&65535)<<1;b=((Wx(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Xx(b)|0;b=Xx(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function Wx(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Xx(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Yx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Zx(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=_x(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;$x(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}ay(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}ay(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}ay(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{by(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){cy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{cy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}by(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){by(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}cy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)cy(d,m,p,n,o,h,0.0);else cy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{dy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((_x(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];cy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);cy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];cy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);cy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];cy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);cy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);cy(d,Y,X,W,V,U,T);cy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((gy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];ey(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){$x(O,-1);h=+(((hy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}by(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;cy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;cy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}fy(d);e=1}else e=0;while(0);l=Q;return e|0}function Zx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;ny(b,0);d=gy(b,2)|0;e=_x(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Cb(16982,16307,1117,17002);if((e+-1&255)<4){$x(b,O(f,c)|0);e=gy(b,f)|0;qy(a,b,(O(d+1|0,f)|0)+2+e|0,(gy(b,f)|0)-e|0);return}else Cb(16899,16307,1118,17002)}function _x(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function $x(a,b){a=a|0;b=b|0;ny(a,(c[a+4>>2]|0)+b|0);return}function ay(a,b,c){a=a|0;b=+b;c=+c;var d=0;fy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;iy(a,1,~~b,~~c,0,0,0,0);return}function by(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;iy(a,2,~~b,~~c,0,0,0,0);return}function cy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;iy(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];ny(i,0);a:do switch((_x(i)|0)<<24>>24){case 0:{$x(i,d);e=(_x(i)|0)&255;break}case 3:{h=gy(i,2)|0;e=gy(i,2)|0;if((h|0)>0){f=0;while(1){g=_x(i)|0;q=e;e=gy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){my(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Zx(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];oy(a,j,k);l=p;return}function ey(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=ly(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Zx(a,e,d)}else my(a,0,0);l=f;return}function fy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))iy(a,2,~~c,~~b,0,0,0,0);return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Cb(16794,16307,1013,16811);do{c=c<<8|(_x(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function hy(a){a=a|0;var b=0,c=0,d=0;c=_x(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(_x(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((_x(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=gy(a,2)|0;break a}case 29:{b=gy(a,4)|0;break a}default:Cb(16777,16307,1063,16779)}}while(0);return b|0}function iy(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){jy(a,e,f);if(d<<24>>24==4){jy(a,g,h);jy(a,i,j)}}else{l=a+40|0;k=a+44|0;ky((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function jy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function ky(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function ly(a){a=a|0;ny(a,0);return gy(a,2)|0}function my(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Cb(16826,16307,1022,16844)}function ny(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Cb(16859,16307,1e3,16883);else{c[a+4>>2]=b;return}}function oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;py(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){qy(g,b,e,d);py(g,19,1,f);d=c[f>>2]|0;if(!d){my(a,0,0);break}else{ny(b,e+d|0);ry(a,b);break}}else my(a,0,0);while(0);l=h;return}function py(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;sy(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=hy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function qy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;my(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function ry(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=gy(b,2)|0;do if(f|0){h=_x(b)|0;g=h&255;if((h+-1&255)<4){$x(b,O(f,g)|0);$x(b,(gy(b,g)|0)+-1|0);break}else Cb(16899,16307,1048,16928)}while(0);qy(a,b,e,(c[d>>2]|0)-e|0);return}function sy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;ny(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((ty(b)|0)&255)>27){do uy(b);while(((ty(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=_x(b)|0;if(e<<24>>24==12)e=(_x(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)qy(a,b,i,h-i|0);else if((e|0)==10)qy(a,b,0,0);return}function ty(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function uy(a){a=a|0;var b=0,d=0,e=0;b=ty(a)|0;if((b&255)<=27)Cb(16949,16307,1069,16958);a:do if(b<<24>>24==30){$x(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(_x(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else hy(a)|0;while(0);return}function vy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Vx(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=hx(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=Wx(h)|0;J=(Wx(h+-2|0)|0)&65535;L=Bf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}ky(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){ky(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{ky(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=xy(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);ky(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((Wx(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=xy(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Cb(16777,16307,1723,17096)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=hx(m)|0;t=hx(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((hx(i)|0)<<16>>16);j=8;v=+((hx(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((hx(i)|0)<<16>>16)*.00006103515625;r=+((hx(i+2|0)|0)<<16>>16)*.00006103515625;s=+((hx(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((hx(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((hx(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=Bx(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=Bf(i*14|0)|0;if(!m)break;if((f|0)>0)Zaa(m|0,y|0,f*14|0)|0;Zaa(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)_f(k);_f(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Cb(16777,16307,1670,17096);if(h|0)_f(x);_f(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Yx(a,b,e)|0)!=0?(j=e+44|0,h=Bf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Yx(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Cb(17023,16307,2113,17073)}else{c[d>>2]=0;i=0}l=k;return i|0}function xy(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){ky(l,3,e,f,i,j);break}else{ky(l,2,e,f,0,0);break}else{if(k)ky(l,3,i+g>>1,j+h>>1,i,j);else c=b;ky(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function yy(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function zy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;By(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function Ay(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function By(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Cb(17196,17218,344,17240);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=Cy(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=Cy(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Cb(17269,17218,401,17240);else if((f|0)==24)Cb(17279,17218,407,17240)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function Cy(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Cb(17319,17218,287,17334);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Cb(17360,17218,294,17334);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function Dy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;my(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=Ey(b,d,17379)|0;e=Ey(b,d,17384)|0;c[a+16>>2]=e;A=Ey(b,d,17389)|0;w=a+20|0;c[w>>2]=A;f=Ey(b,d,17394)|0;c[a+24>>2]=f;z=Ey(b,d,17399)|0;c[a+28>>2]=z;y=Ey(b,d,17404)|0;c[a+32>>2]=y;c[a+36>>2]=Ey(b,d,17409)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=Ey(b,d,17414)|0;do if(e|0?(my(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],my(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],my(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],$x(r,2),ny(r,(_x(r)|0)&255),ry(q,r),ry(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Zx(j,q,0),ry(q,r),ry(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],py(j,17,1,m),py(j,262,1,k),py(j,292,1,n),py(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],oy(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;ny(r,f);ry(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];qy(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}ny(r,u);ry(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=Ey(b,d,17419)|0;if(!e)e=65535;else e=(Wx(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=Wx(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((Wx(f)|0)<<16>>16){case 3:{switch((Wx(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Xx(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(Wx(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function Ey(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=Wx(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Xx(f+8|0)|0}while(0);return c|0}function Fy(b,c){b=b|0;c=c|0;var d=0;a:do if(!(Gy(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Xx(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((Hy(b+8|0)|0)>(c|0))b=Xx(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function Gy(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function Hy(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Iy(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jy(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ny(a,My(a,b)|0);c[a>>2]=b;return}function Ky(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Cb(12740,37262,1030,12749);return 0}function Ly(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function My(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ny(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Oy(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Cb(17621,17218,250,17657);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Py(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Py(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Qy(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Cb(17675,12849,1572,17689);if((e+-1|0)>>>0>=65535)Cb(17710,12849,1573,17689);if((f+-1|0)>>>0<65535){Ry(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+48|0;Sy(f,g);l=h;return (c[f>>2]|0)+-1|0}else Cb(17739,12849,1574,17689);return 0}function Ry(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;bf(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;df(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Sy(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Uy(a,Ty(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Ty(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Uy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Vy(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((c8(b)|0)+4|0)/5|0)<<2;f=Bf(g)|0;Wy(b,f);e=Xy(a,f,g,c,d,e)|0;_f(f);return e|0}function Wy(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=jz(d)|0;f=jz(a[b+1>>0]|0)|0;g=jz(a[b+2>>0]|0)|0;h=jz(a[b+3>>0]|0)|0;e=((((((((jz(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Xy(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Yy(d)|0;m=Bf(k)|0;Zy(m,d,e);if(!g)mw(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=_y(b,m,k,f,j,h)|0;l=n;return m|0}else Cb(29773,12849,1555,29797);return 0}function Yy(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Zy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Yy(e)|0;c[14480]=e;c[14481]=e+f;g=b+g|0;c[14482]=g;c[14483]=b;c[14484]=b;f=e+16|0;while(1){b=gz(f)|0;if((b|0)==(f|0))break;if((c[14484]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Cb(29997,12849,2800,29982);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[14484]|0)==(g|0))break;Cb(29955,12849,2790,29982)}Cb(16777,12849,2796,29982)}while(0);return}function _y(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)mw(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Cb(29773,12849,1539,29828);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=$y(a,j)|0;l=m;return k|0}function $y(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Cb(29912,12849,1458,29904);i=b+36|0;if(a[d+52>>0]|0){if(Tl(i)|0)Cb(29940,12849,1464,29904)}else{k=Bf(84)|0;a[e>>0]=a[h>>0]|0;h=Lg(84,e,k)|0;az(h);c[f>>2]=h;Ql(i,f)}f=b+60|0;bz(f,d);f=cz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(Ul(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=Bf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;Zaa(i|0,c[d>>2]|0,c[k>>2]|0)|0}vw(b);l=j;return c[h>>2]|0}Cb(29849,12849,1457,29904);return 0}function az(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;bf(e);fz(a+16|0);ds(a+28|0);Vr(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;df(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;zw(a);l=d;return}function bz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ez(a,dz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function cz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Cb(37253,37262,1040,13011);return 0}function dz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function fz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return} -function Re(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Se(){return l|0}function Te(a){a=a|0;l=a}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function We(a){a=a|0;z=a}function Xe(){return z|0}function Ye(){nw(42648);return}function Ze(){_e(42724);return}function _e(d){d=d|0;var e=0,f=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;o=l;l=l+16|0;h=o;jf(d+4|0);af(d+5092|0);m=d+5940|0;Gu(m);vr(d+6088|0);vr(d+6100|0);vr(d+6112|0);Hg(d+6124|0);n=d+6188|0;bf(n);wr(d+6208|0);xr(d+6220|0);yr(d+6232|0);zr(d+6244|0);zr(d+6256|0);i=d+6268|0;bf(i);bf(d+6276|0);j=d+6284|0;bf(j);bf(d+6292|0);k=d+6320|0;Eg(k);Ar(d+6352|0);e=d+6408|0;f=d+6372|0;do{Br(f);f=f+12|0}while((f|0)!=(e|0));Mg(d+6412|0,0);e=d+6896|0;f=d+6532|0;do{Dr(f);f=f+52|0}while((f|0)!=(e|0));Er(d+6908|0);Eg(d+6940|0);Fr(d+6976|0);Gr(d+6996|0);az(d+10280|0);cf(d+10372|0);q=d+10392|0;bf(q);p=d+10412|0;bf(p);Hr(d+10424|0);f=d+10436|0;bf(f);e=d+10444|0;bf(e);Ir(d+10456|0);Jr(d+10468|0);a[d>>0]=0;c[d+5928>>2]=0;g[d+5936>>2]=0.0;g[d+5932>>2]=0.0;g[d+6072>>2]=0.0;c[d+6076>>2]=0;c[d+6084>>2]=-1;c[d+6080>>2]=-1;s=d+6136|0;t=d+6164|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;a[s+24>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;b[t+20>>1]=0;a[t+22>>0]=0;df(h,-1.0,-1.0);t=h;s=c[t+4>>2]|0;r=n;c[r>>2]=c[t>>2];c[r+4>>2]=s;c[d+6196>>2]=0;c[d+6200>>2]=0;c[d+6204>>2]=0;df(h,0.0,0.0);r=h;n=c[r+4>>2]|0;c[i>>2]=c[r>>2];c[i+4>>2]=n;df(h,0.0,0.0);i=h;n=c[i+4>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=n;a[d+6300>>0]=0;j=d+6304|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;Eg(h);c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];k=d+6336|0;c[d+6348>>2]=0;a[d+6896>>0]=0;c[d+6900>>2]=0;c[k>>2]=0;c[k+4>>2]=0;b[k+8>>1]=0;a[k+10>>0]=0;c[d+6904>>2]=-1;c[d+6956>>2]=0;c[d+6964>>2]=0;c[d+6968>>2]=0;c[d+6972>>2]=-1;k=d+6988|0;c[k>>2]=0;c[k+4>>2]=0;c[d+10364>>2]=0;c[d+10368>>2]=335872;g[d+10388>>2]=0.0;df(h,0.0,0.0);k=h;j=c[k+4>>2]|0;n=q;c[n>>2]=c[k>>2];c[n+4>>2]=j;g[d+10400>>2]=.009999999776482582;g[d+10404>>2]=.009999999776482582;g[d+10408>>2]=10.0;df(h,0.0,0.0);n=h;j=c[n+4>>2]|0;k=p;c[k>>2]=c[n>>2];c[k+4>>2]=j;c[d+10420>>2]=0;df(h,-1.0,-1.0);k=h;j=c[k>>2]|0;k=c[k+4>>2]|0;n=e;c[n>>2]=j;c[n+4>>2]=k;n=f;c[n>>2]=j;c[n+4>>2]=k;g[d+6408>>2]=0.0;c[d+6452>>2]=m;c[d+6456>>2]=10860;g[d+10452>>2]=0.0;a[d+10480>>0]=0;c[d+10484>>2]=0;c[d+10488>>2]=0;c[d+10492>>2]=0;$aa(d+6528|0,0,368)|0;c[d+10496>>2]=2;$aa(d+10500|0,0,488)|0;c[d+10996>>2]=-1;c[d+10992>>2]=-1;c[d+10988>>2]=-1;$aa(d+11e3|0,0,3073)|0;l=o;return}function $e(a){a=a|0;var b=0,c=0;Kr(a+10468|0);Lr(a+10456|0);Mr(a+10424|0);yw(a+10280|0);Nr(a+6996|0);Or(a+6976|0);Pr(a+6412|0);c=a+6372|0;b=a+6408|0;do{b=b+-12|0;Cr(b)}while((b|0)!=(c|0));Qr(a+6256|0);Qr(a+6244|0);Rr(a+6232|0);Sr(a+6220|0);Tr(a+6208|0);Pg(a+6124|0);Ur(a+6112|0);Ur(a+6100|0);Ur(a+6088|0);return}function af(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;bf(j);k=b+20|0;bf(k);m=b+28|0;bf(m);n=b+52|0;bf(n);o=b+68|0;bf(o);p=b+76|0;bf(p);q=b+84|0;bf(q);r=b+116|0;bf(r);e=b+124|0;bf(e);f=b+132|0;bf(f);h=b+836|0;i=b+148|0;do{cf(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;df(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=0.0;df(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;df(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;df(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;df(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;df(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;df(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;df(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;df(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;df(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;a[b+140>>0]=1;a[b+141>>0]=1;g[b+144>>2]=1.25;Du(b);l=s;return}function bf(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function cf(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function df(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function ef(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;f=d;e=d+8|0;h=a+4|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+12|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+20|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+36|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+44|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+52|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+60|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+68|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+76|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=a+84|0;gf(e,h,b);ff(f,e);i=f;j=c[i+4>>2]|0;c[h>>2]=c[i>>2];c[h+4>>2]=j;h=a+92|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+96|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+100|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+104|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+108|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+112|0;g[h>>2]=+hf(+g[h>>2]*b);h=a+124|0;gf(e,h,b);ff(f,e);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a=a+132|0;gf(e,a,b);ff(f,e);e=c[f+4>>2]|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;l=d;return}function ff(a,b){a=a|0;b=b|0;df(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function gf(a,b,c){a=a|0;b=b|0;c=+c;df(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function hf(a){a=+a;return +(+(~~a|0))}function jf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;bf(b);h=b+140|0;bf(h);i=b+148|0;bf(i);j=b+156|0;bf(j);k=b+200|0;bf(k);bf(b+796|0);m=b+804|0;bf(m);e=b+852|0;d=b+812|0;do{bf(d);d=d+8|0}while((d|0)!=(e|0));d=b+972|0;e=b+932|0;do{bf(e);e=e+8|0}while((e|0)!=(d|0));$aa(b|0,0,5088)|0;df(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4782;c[b+20>>2]=4792;g[b+24>>2]=.30000001192092896;g[b+28>>2]=6.0;d=b+36|0;e=d+76|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+112>>2]=.25;g[b+116>>2]=.05000000074505806;c[b+120>>2]=0;c[b+124>>2]=42648;g[b+128>>2]=1.0;c[b+136>>2]=0;a[b+132>>0]=0;df(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;df(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+164>>0]=0;a[b+165>>0]=1;c[b+168>>2]=0;c[b+184>>2]=2;c[b+188>>2]=9;c[b+172>>2]=3;c[b+176>>2]=1;c[b+180>>2]=0;c[b+192>>2]=2;c[b+196>>2]=0;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;df(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+32>>2]=6.0;d=0;do{g[b+912+(d<<2)>>2]=-1.0;g[b+892+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3040+(d<<2)>>2]=-1.0;g[b+992+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);l=n;return}function kf(a){a=a|0;a=(c[244]|0)+10424|0;if(Ut(a)|0)a=0;else a=qo(a)|0;return a|0}function lf(b,d){b=b|0;d=d|0;var e=0;e=(c[244]|0)+10424|0;zi(e);b=c8(d)|0;pg(e,b+1|0);Zaa(qg(e,0)|0,d|0,b|0)|0;a[(qg(e,b)|0)>>0]=0;return}function mf(a,b){a=a|0;b=b|0;return}function nf(a,c){a=a|0;c=c|0;var d=0;d=of(a+738|0)|0;if((d|0)<16){b[a+738+(d<<1)>>1]=c;b[a+738+(d+1<<1)>>1]=0}return}function of(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function pf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Hf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;rf(m,e,b);rf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));sf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{gf(j,i,h);tf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function rf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function sf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function tf(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function uf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function vf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;rf(s,b,a);rf(t,c,a);rf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function wf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;qf(i,b,d,f);qf(j,d,e,f);qf(k,e,b,f);rf(o,f,i);n=+xf(o);rf(o,f,j);h=+xf(o);rf(o,f,k);g=+yf(n,+yf(h,+xf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function xf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function yf(a,b){a=+a;b=+b;return +(a>0]=0}return}function Af(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=Bf(c)|0;Zaa(b|0,a|0,c|0)|0;return b|0}function Bf(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+784|0;c[d>>2]=(c[d>>2]|0)+1;return Cd[c[b+188>>2]&63](a)|0}function Cf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function Df(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function Ef(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=u8(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function Ff(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=u8(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Gf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[14201]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[56800+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[56800+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[56800+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Hf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function If(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Hf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Jf(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Kf(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Kf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Lf(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Mf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Mf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Nf(a,b){a=a|0;b=b|0;Of(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function Of(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Pf(a){a=a|0;var b=0;b=~~(+Qf(+g[a>>2])*255.0+.5);b=~~(+Qf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Qf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Qf(+g[a+12>>2])*255.0+.5)<<24|0}function Qf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Rf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[244]|0;a=f+5240+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5092>>2]*b);a=Pf(e)|0;l=d;return a|0}function Sf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[244]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5092>>2]*+g[a>>2];a=Pf(d)|0;l=b;return a|0}function Tf(a){a=a|0;return (c[244]|0)+5240+(a<<4)|0}function Uf(a){a=a|0;var b=0.0;b=+g[(c[244]|0)+5092>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Vf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Wf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Wf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Xf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+i9(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Yf(a,b){a=a|0;b=b|0;return w9(a,b)|0}function Zf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Cb(4806,4833,1364,4849);g=(d|0)!=0;if(g)c[d>>2]=0;b=Yf(a,b)|0;do if(!b)a=0;else{if(((G9(b,0,2)|0)==0?(f=N9(b)|0,(f|0)!=-1):0)?(G9(b,0,0)|0)==0:0){a=Bf(f+e|0)|0;if(!a){k9(b)|0;a=0;break}if((K9(a,1,f,b)|0)!=(f|0)){k9(b)|0;_f(a);a=0;break}if((e|0)>0)$aa(a+f|0,0,e|0)|0;k9(b)|0;if(!g)break;c[d>>2]=f;break}k9(b)|0;a=0}while(0);return a|0}function _f(a){a=a|0;var b=0,d=0;b=c[244]|0;if(a|0){d=b+784|0;c[d>>2]=(c[d>>2]|0)+-1}je[c[b+192>>2]&127](a);return}function $f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=ag(a,b)|0;if((e|0)!=(bg(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=bs(a)|0;a=(dg(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function bg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function cg(a,b){a=a|0;b=b|0;var d=0;d=ag(a,b)|0;if((d|0)!=(bg(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function dg(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function eg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){du(a,eu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;_aa(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Cb(11501,37262,1065,11531);return 0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function gg(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{fg(e,b,d);eg(a,f,e)|0}l=g;return}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ag(a,b)|0;if((f|0)!=(dg(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{gg(e,b,d);eg(a,f,e)|0}l=g;return}function jg(a){a=a|0;Db(a|0)|0;saa()}function kg(a){a=+a;var b=0,c=0;b=Ii()|0;if(a==0.0)a=+g[b+484>>2];c=b+324|0;g[c>>2]=a;Il(b+344|0,c);return}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;if(!(d&1048576)){df(g,0.0,0.0);g=oo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Cb(8620,4833,8990,32225);return 0}function mg(){var a=0,b=0;b=Ii()|0;a=b+344|0;Ml(a);if(Nl(a)|0)a=b+484|0;else a=Ll(a)|0;c[b+324>>2]=c[a>>2];return}function ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=Ff(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))og(a,(g|0)>(d|0)?g:d);pg(a,g);Ff(qg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function og(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=Bf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{Zaa(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}_f(a);c[g>>2]=f;c[e>>2]=b}return}function pg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))og(a,rs(a,b)|0);c[a>>2]=b;return}function qg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Cb(12740,37262,1030,12749);return 0}function rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;ng(a,b,f);l=e;return}function sg(a){a=a|0;var b=0;b=a+80|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tg(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=9)Cb(4868,4833,1705,4911);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+48|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0}if((b|0)>0){b=0;do{e=a+48+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function ug(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+48|0;b=+vg(+g[h>>2],b);g[h>>2]=b;h=a+52|0;g[h>>2]=+vg(+g[h>>2],c);h=a+56|0;g[h>>2]=+vg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+48+(e<<2)>>2]}return +(+vg(+g[a+8>>2],b))}function vg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function wg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+xg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){yg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];zg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function xg(){var a=0;a=Cg()|0;return +(+g[a+220>>2]-+g[a+24>>2]+ +g[a+108>>2])}function yg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0.0;i=c[244]|0;h=c[i+6140>>2]|0;do if(!(a[i+10480>>0]|0))if(!(a[h+144>>0]|0)){j=+g[h+220>>2];i=~~((+g[h+444>>2]-j)/d);h=kj(~~((+g[h+436>>2]-j)/d),0,b)|0;i=kj(i+1|0,h,b)|0;c[e>>2]=h;c[f>>2]=i;break}else{c[f>>2]=0;c[e>>2]=0;break}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function zg(a,b){a=+a;b=+b;var d=0;Zm(a);d=Ii()|0;a=+g[d+220>>2];g[d+228>>2]=a-b;g[d+256>>2]=b-+g[(c[244]|0)+5164>>2];d=c[d+416>>2]|0;if(d|0)g[d+36>>2]=a;return}function Ag(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];zg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function Bg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(Cg()|0)+144>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+xg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+xg()-+g[b>>2];if(f>0.0){wg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Cb(4918,4833,1801,37441);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Cb(4938,4833,1810,37441);break}case 3:{Ag(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function Cg(){return c[(c[244]|0)+6140>>2]|0}function Dg(d,e,f){d=d|0;e=e|0;f=f|0;var 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,v=0,w=0,x=0,y=0;h=l;l=l+16|0;i=h;s=d+12|0;bf(s);x=d+20|0;bf(x);k=d+28|0;bf(k);v=d+36|0;bf(v);bf(d+44|0);t=d+52|0;bf(t);u=d+60|0;bf(u);Eg(d+68|0);q=d+84|0;bf(q);r=d+104|0;bf(r);o=d+112|0;bf(o);p=d+120|0;bf(p);j=d+132|0;bf(j);m=d+200|0;bf(m);n=d+208|0;bf(n);Fg(d+216|0);y=d+420|0;Gg(y);Eg(d+432|0);Eg(d+448|0);Eg(d+464|0);sg(d+488|0);Hg(d+568|0);Ig(d+580|0);c[d>>2]=Af(f)|0;w=d+4|0;c[w>>2]=Gf(f,0,0)|0;Jg(y,w);c[d+8>>2]=0;df(i,0.0,0.0);f=i;w=c[f>>2]|0;f=c[f+4>>2]|0;c[x>>2]=w;c[x+4>>2]=f;c[s>>2]=w;c[s+4>>2]=f;df(i,0.0,0.0);s=i;f=c[s>>2]|0;s=c[s+4>>2]|0;c[v>>2]=f;c[v+4>>2]=s;c[k>>2]=f;c[k+4>>2]=s;df(i,0.0,0.0);k=i;s=c[k>>2]|0;k=c[k+4>>2]|0;f=u;c[f>>2]=s;c[f+4>>2]=k;f=t;c[f>>2]=s;c[f+4>>2]=k;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=k;g[d+92>>2]=0.0;g[d+96>>2]=0.0;c[d+100>>2]=Kg(d,4975,0)|0;df(i,0.0,0.0);q=i;k=c[q+4>>2]|0;f=r;c[f>>2]=c[q>>2];c[f+4>>2]=k;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=i;k=c[f+4>>2]|0;c[o>>2]=c[f>>2];c[o+4>>2]=k;df(i,.5,.5);o=i;k=c[o+4>>2]|0;f=p;c[f>>2]=c[o>>2];c[f+4>>2]=k;a[d+129>>0]=0;a[d+128>>0]=0;df(i,0.0,0.0);f=i;k=c[f+4>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=k;j=d+140|0;c[j>>2]=0;b[j+4>>1]=0;a[j+6>>0]=0;c[d+148>>2]=-1;c[d+152>>2]=-1;c[d+156>>2]=0;c[d+160>>2]=0;c[d+168>>2]=-1;c[d+164>>2]=-1;a[d+172>>0]=0;c[d+176>>2]=0;c[d+180>>2]=-1;c[d+184>>2]=0;c[d+196>>2]=15;c[d+192>>2]=15;c[d+188>>2]=15;df(i,3402823466385288598117041.0e14,3402823466385288598117041.0e14);j=i;k=c[j>>2]|0;j=c[j+4>>2]|0;f=n;c[f>>2]=k;c[f+4>>2]=j;f=m;c[f>>2]=k;c[f+4>>2]=j;c[d+480>>2]=-1;g[d+484>>2]=0.0;g[d+592>>2]=1.0;f=Bf(116)|0;a[i>>0]=a[h+8>>0]|0;f=Lg(116,i,f)|0;Mg(f,e+5940|0);c[d+596>>2]=f;c[f+44>>2]=c[d>>2];c[d+600>>2]=0;c[d+604>>2]=0;c[d+608>>2]=0;c[d+616>>2]=-1;c[d+612>>2]=-1;c[d+624>>2]=2147483647;c[d+620>>2]=2147483647;c[d+632>>2]=2147483647;c[d+628>>2]=2147483647;l=h;return}function Eg(a){a=a|0;df(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function Fg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;bf(b);h=b+8|0;bf(h);k=b+16|0;bf(k);m=b+24|0;bf(m);d=b+60|0;Eg(d);vr(b+84|0);cs(b+116|0);ds(b+128|0);ds(b+140|0);es(b+152|0);df(f,0.0,0.0);i=f;j=c[i>>2]|0;i=c[i+4>>2]|0;c[m>>2]=j;c[m+4>>2]=i;c[k>>2]=j;c[k+4>>2]=i;c[h>>2]=j;c[h+4>>2]=i;h=b;c[h>>2]=j;c[h+4>>2]=i;h=b+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;g[b+48>>2]=-1.0;c[b+52>>2]=0;c[b+56>>2]=0;Eg(f);c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+76>>0]=0;a[b+77>>0]=0;g[b+80>>2]=0.0;c[b+96>>2]=0;c[b+100>>2]=0;g[b+108>>2]=0.0;c[b+104>>2]=1;g[b+112>>2]=-1.0;b=b+164|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Gg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Hg(a){a=a|0;is(a);return}function Ig(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fu(a,gu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Kg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;d=Gf(b,(d|0)==0?0:d-b|0,a)|0;Wg(d);return d|0}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Mg(a,b){a=a|0;b=b|0;js(a);Vr(a+12|0);ks(a+24|0);ls(a+60|0);ms(a+72|0);ns(a+84|0);os(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;Hu(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;return}function Og(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pg(a){a=a|0;ps(a);return}function Qg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rg(a){a=a|0;fs(a+152|0);gs(a+140|0);gs(a+128|0);hs(a+116|0);Ur(a+84|0);return}function Sg(a){a=a|0;Tg(a+596|0);Ug(a);Og(a+580|0);Pg(a+568|0);Qg(a+420|0);Rg(a+216|0);return}function Tg(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Pr(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ug(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_f(b);c[a>>2]=0}return}function Vg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Wg(b){b=b|0;var d=0;d=c[244]|0;if((c[d+6172>>2]|0)==(b|0))a[d+6184>>0]=1;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Gf(e,4,c[(Vg(a+420|0)|0)>>2]|0)|0;Wg(b);l=d;return b|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Vg(a+420|0)|0)>>2]|0;return Gf(b,(d|0)==0?0:d-b|0,a)|0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Vg(a+420|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Gf(f,16,e)|0;Wg(b);l=d;return b|0}function _g(b,e){b=b|0;e=e|0;var f=0,h=0,i=0;f=c[244]|0;h=f+6172|0;i=(c[h>>2]|0)!=(b|0);a[f+6185>>0]=i&1;if(i)g[f+6180>>2]=0.0;c[h>>2]=b;a[f+6186>>0]=0;i=f+6184|0;a[i>>0]=d[i>>0]|0|(b|0)!=0;c[f+6196>>2]=e;return}function $g(){_g(0,0);return}function ah(b){b=b|0;var d=0.0,e=0;e=c[244]|0;c[e+6156>>2]=b;a[e+6160>>0]=0;if((b|0)!=0?(c[e+6164>>2]|0)==(b|0):0)d=+g[e+6168>>2]+ +g[e+12>>2];else d=0.0;g[e+6168>>2]=d;return}function bh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[244]|0;h=c[f+6140>>2]|0;if((a[h+144>>0]|0)==0?(q=h+216|0,k=h+248|0,n=+vg(+g[k>>2],+g[b+4>>2]),m=h+252|0,d=+vg(+g[m>>2],d),p=h+220|0,df(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+224|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5164|0,df(e,+(~~(+g[h+20>>2]+ +g[h+404>>2]+ +g[h+412>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+240|0,g[f>>2]=+vg(+g[f>>2],+g[o>>2]),f=h+244|0,g[f>>2]=+vg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+256>>2]=n,g[h+260>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+316>>2]|0)==1):0)ch(0.0,-1.0);l=i;return}function ch(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Ii()|0;if(!(a[i+144>>0]|0)){f=c[244]|0;h=d<0.0;if(b!=0.0){e=+g[i+412>>2];b=+g[i+408>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+104>>2]+b))}else{if(h)e=+g[f+5160>>2];else e=d;b=+g[i+224>>2]}g[i+216>>2]=e+b;c[i+220>>2]=c[i+228>>2];c[i+248>>2]=c[i+256>>2];c[i+252>>2]=c[i+260>>2]}return}function dh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;eh(d,a);bh(d,b);l=c;return}function eh(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function fh(b,d){b=b|0;d=d|0;var e=0,f=0;f=c[(c[244]|0)+6140>>2]|0;e=gh(b,d,0)|0;c[f+272>>2]=d;d=f+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];d=f+292|0;a[d>>0]=0;if(e)d=0;else{a[d>>0]=(hh(b,b+8|0,1)|0)&1;d=1}return d|0}function gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[244]|0;do if(!(lh(b,(c[f+6140>>2]|0)+432|0)|0)){if(d|0?(c[f+6172>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10480>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[244]|0;j=c[i+6140>>2]|0;lj(e,a,b);if(d)mj(e,j+432|0);j=i+5176|0;rf(g,e,j);tf(h,e+8|0,j);lj(f,g,h);j=nj(f,i+204|0)|0;l=k;return j|0}function ih(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=c[d+6140>>2]|0;do if(a[f+292>>0]|0){if(b&3|0)Cb(4981,4833,2039,33306);if(!((b&32|0)==0?(c[d+6152>>2]|0)!=(c[f+604>>2]|0):0)){if(((((b&16|0)==0?(e=c[d+6172>>2]|0,e|0):0)?(e|0)!=(c[f+272>>2]|0):0)?(a[d+6186>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+320>>2]&4|0)==0:0){if((c[f+272>>2]|0)==(c[f+100>>2]|0)?a[f+142>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[244]|0)+6144>>2]|0;do if(!e)e=1;else{e=c[e+604>>2]|0;if((e|0?a[e+141>>0]|0:0)?(e|0)!=(c[b+604>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&4|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[244]|0;e=c[f+6156>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6160>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6140>>2]|0;if((c[f+6148>>2]|0)==(e|0)){g=c[f+6172>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6186>>0]|0)==0:0){e=0;break}if((hh(b,b+8|0,1)|0?jh(e,0)|0:0)?(c[e+320>>2]&4|0)==0:0){ah(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=c[244]|0;h=(c[b+320>>2]&5|0)==1;i=b+612|0;c[i>>2]=(c[i>>2]|0)+1;if(h){j=b+616|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[g+6172>>2]|0)==(d|0):0)?(c[b+628>>2]|0)==2147483647:0)?(f=b+632|0,(c[f>>2]|0)==2147483647):0)?(a[g+225>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[g+226>>0]|0)==0?1:h<<31>>31)+(c[b+616>>2]|0);do if((c[i>>2]|0)==(c[b+620>>2]|0))b=1;else{if(h?(c[b+616>>2]|0)==(c[b+624>>2]|0):0){b=1;break}b=0}while(0);return b|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[244]|0)+40+(a<<2)>>2]|0;if((a|0)>-1)a=uj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+612|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+616|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[244]|0;bf(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6140>>2]|0)+20|0;qh(h);tf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +vg(+g[j>>2]-+g[(c[k+6140>>2]|0)+216>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +vg(+g[j+4>>2]-+g[(c[k+6140>>2]|0)+220>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=Cg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+416>>2]|0;if(d|0){h=+Hm((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=Cg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+104>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+vg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[244]|0;b=c[a+176>>2]|0;if(!b)a=58608;else a=Cd[b&63](c[a+184>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+180>>2]|0;if(d|0)oe[d&127](c[b+184>>2]|0,a);return}function uh(){return 30079}function vh(){return c[244]|0}function wh(a){a=a|0;c[244]=a;return}function xh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+1|0;f=(b|0)==0?2:b;b=Cd[f&63](14076)|0;a[g>>0]=a[e>>0]|0;_e(Lg(14076,g,b)|0);c[b+188>>2]=f;c[b+192>>2]=d|0?d:9;l=e;return b|0}function yh(a){a=a|0;var b=0;b=c[a+192>>2]|0;$e(a);je[b&127](a);if((c[244]|0)==(a|0))wh(0);return}function zh(){return (c[244]|0)+4|0}function Ah(){return (c[244]|0)+5092|0}function Bh(){var b=0;b=(c[244]|0)+6352|0;return (a[b>>0]|0?b:0)|0}function Ch(){return +(+g[(c[244]|0)+6072>>2])}function Dh(){return c[(c[244]|0)+6076>>2]|0}function Eh(){return (c[244]|0)+6412|0}function Fh(){return (c[244]|0)+5940|0}function Gh(){var b=0,e=0,f=0,h=0.0,i=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.0;B=l;l=l+48|0;A=B+8|0;q=B;w=B+40|0;x=B+32|0;y=B+24|0;z=c[244]|0;t=z+12|0;if(!(+g[t>>2]>=0.0))Cb(5060,4833,2266,30213);f=z+4|0;if(+g[f>>2]>=0.0?(e=z+8|0,+g[e>>2]>=0.0):0){i=z+128|0;b=(c[i>>2]|0)+36|0;if((c[b>>2]|0)<=0)Cb(5256,4833,2268,30213);if(!(Ih(c[(Hh(b,0)|0)>>2]|0)|0))Cb(5377,4833,2269,30213);b=z+5236|0;if(!(+g[b>>2]>0.0))Cb(5504,4833,2270,30213);h=+g[z+5092>>2];if(!(h>=0.0)|!(h<=1.0))Cb(5567,4833,2271,30213);k=z+6076|0;v=c[k>>2]|0;if(v|0?(c[z+6080>>2]|0)!=(v|0):0)Cb(5723,4833,2272,30213);if(!(a[z>>0]|0))Jh();Kh(Lh()|0);if(!(Ih(c[z+5928>>2]|0)|0))Cb(5857,4833,2279,30213);Of(A,0.0,0.0,+g[f>>2],+g[e>>2]);p=z+5960|0;c[p>>2]=c[A>>2];c[p+4>>2]=c[A+4>>2];c[p+8>>2]=c[A+8>>2];c[p+12>>2]=c[A+12>>2];c[z+5956>>2]=c[b>>2];p=z+6072|0;g[p>>2]=+g[t>>2]+ +g[p>>2];c[k>>2]=(c[k>>2]|0)+1;c[z+10420>>2]=0;c[z+6136>>2]=0;v=z+6412|0;Hu(v);lv(v,c[i>>2]|0);iv(v);c[z+6448>>2]=(a[z+5233>>0]|0?2:0)|d[z+5232>>0];a[z+6352>>0]=0;v=z+6356|0;b=z+6164|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;if(!(c[b>>2]|0))g[z+6168>>2]=0.0;f=z+6156|0;c[b>>2]=c[f>>2];c[f>>2]=0;a[z+6160>>0]=0;f=z+6184|0;if(!(a[f>>0]|0)){b=z+6172|0;e=c[b>>2]|0;if((e|0)==0?1:(c[z+6176>>2]|0)!=(e|0))v=b;else{$g();r=27}}else{b=z+6172|0;r=27}if((r|0)==27){v=b;e=c[b>>2]|0}if(e|0){u=z+6180|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[z+6176>>2]=e;a[f>>0]=0;a[z+6185>>0]=0;b=z+10364|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;u=z+6896|0;if(a[u>>0]|0?((c[z+6924>>2]|0)+1|0)<(c[k>>2]|0):0){Mh();Nh(z+6976|0);s=z+6988|0;c[s>>2]=0;c[s+4>>2]=0}b=z+6964|0;c[z+6968>>2]=c[b>>2];c[b>>2]=0;g[z+6960>>2]=3402823466385288598117041.0e14;Zaa(z+3044|0,z+996|0,2048)|0;b=0;do{e=z+996+(b<<2)|0;if(a[z+229+b>>0]|0){h=+g[e>>2];if(h<0.0)h=0.0;else h=h+ +g[t>>2]}else h=-1.0;g[e>>2]=h;b=b+1|0}while((b|0)!=512);s=z+204|0;b=z+808|0;if(Oh(s)|0?Oh(b)|0:0){rf(A,s,b);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}else{df(A,0.0,0.0);m=A;n=c[m+4>>2]|0;o=z+800|0;c[o>>2]=c[m>>2];c[o+4>>2]=n}o=s;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;m=A+4|0;n=z+28|0;o=z+32|0;k=0;do{f=z+212+k|0;if(!(a[f>>0]|0)){i=z+876+k|0;a[i>>0]=0;b=z+896+(k<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=z+896+(k<<2)|0;i=z+876+k|0;a[i>>0]=+g[e>>2]<0.0&1;b=0}a[z+886+k>>0]=b&1;b=c[e>>2]|0;c[z+916+(k<<2)>>2]=b;h=(c[j>>2]=b,+g[j>>2]);do if(!(a[f>>0]|0))h=-1.0;else{if(h<0.0){h=0.0;break}h=+g[t>>2]+h}while(0);g[e>>2]=h;e=z+881+k|0;a[e>>0]=0;do if(!(a[i>>0]|0)){if(!(a[f>>0]|0))break;rf(A,s,z+816+(k<<3)|0);i=z+936+(k<<3)|0;h=+g[A>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+936+(k<<3)+4|0;h=+g[m>>2];g[i>>2]=+vg(+g[i>>2],h<0.0?-h:h);i=z+976+(k<<2)|0;h=+g[i>>2];g[i>>2]=+vg(h,+xf(A))}else{h=+g[p>>2];f=z+856+(k<<2)|0;do if(h-+g[f>>2]<+g[n>>2]){b=z+816+(k<<3)|0;rf(A,s,b);C=+xf(A);h=+g[o>>2];if(!(C>0]=1;h=-3402823466385288598117041.0e14}else b=z+816+(k<<3)|0;while(0);g[f>>2]=h;i=s;f=c[i+4>>2]|0;e=b;c[e>>2]=c[i>>2];c[e+4>>2]=f;df(A,0.0,0.0);e=A;f=c[e+4>>2]|0;i=z+936+(k<<3)|0;c[i>>2]=c[e>>2];c[i+4>>2]=f;g[z+976+(k<<2)>>2]=0.0}while(0);k=k+1|0}while((k|0)!=5);C=+g[t>>2];b=z+10980|0;p=z+10500+(c[b>>2]<<2)|0;e=z+10984|0;g[e>>2]=+g[e>>2]+(C-+g[p>>2]);g[p>>2]=C;c[b>>2]=((c[b>>2]|0)+1|0)%120|0;g[z+780>>2]=1.0/(+g[e>>2]/120.0);e=z+6204|0;b=c[e>>2]|0;a:do if((b|0)!=0?(b|0)==(c[v>>2]|0):0){Wg(b);f=z+6200|0;b=c[f>>2]|0;do if(b|0){if(!(c[b+604>>2]|0))break;if((c[b+100>>2]|0)!=(c[e>>2]|0))Cb(5921,4833,2379,30213);if(!(a[z+212>>0]|0)){$g();c[f>>2]=0;c[e>>2]=0;break a}rf(A,s,z+6188|0);b=c[(c[f>>2]|0)+604>>2]|0;if(!(!(+g[b+12>>2]!=+g[A>>2])?!(+g[b+16>>2]!=+g[A+4>>2]):0)){Ph(b);b=c[(c[f>>2]|0)+604>>2]|0}n=A;o=c[n+4>>2]|0;p=b+12|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;Qh(c[f>>2]|0);break a}while(0);Cb(5876,4833,2378,30213)}else r=73;while(0);if((r|0)==73){c[z+6200>>2]=0;c[e>>2]=0}b=z+10452|0;h=+g[b>>2];do if(h>0.0){C=h-+g[t>>2];g[b>>2]=C;if(!(C<=0.0))break;Rh(c[z+20>>2]|0)}while(0);b=c[z+6200>>2]|0;do if(!b)r=80;else{if(c[b+8>>2]&512|0){r=80;break}e=z+6148|0;c[e>>2]=b;r=81}while(0);if((r|0)==80){p=s;e=c[p+4>>2]|0;b=q;c[b>>2]=c[p>>2];c[b+4>>2]=e;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];b=Sh(A)|0;e=z+6148|0;c[e>>2]=b;if(!b)i=0;else r=81}if((r|0)==81)i=c[b+604>>2]|0;p=z+6152|0;c[p>>2]=i;b=Th()|0;o=(b|0)!=0;f=z+6408|0;do if(o){g[f>>2]=+yf(+g[f>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(Uh(i,b)|0)break;c[e>>2]=0;c[p>>2]=0}else g[f>>2]=0.0;while(0);m=z+6244|0;b=-1;k=0;i=0;do{if(a[z+876+i>>0]|0){if(!(c[e>>2]|0))f=(Vh(m)|0)^1;else f=1;a[z+891+i>>0]=f&1}t=a[z+212+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[z+856+(i<<2)>>2]<+g[z+856+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)n=1;else n=(a[z+891+b>>0]|0)!=0;i=z+10988|0;b=c[i>>2]|0;do if((b|0)==-1){if(n?k|(c[e>>2]|0)!=0:0){b=1;break}b=(Vh(m)|0)^1}else b=(b|0)!=0;while(0);a[z+776>>0]=b&1;f=z+10992|0;b=c[f>>2]|0;if((b|0)==-1)b=o|(c[v>>2]|0)!=0;else b=(b|0)!=0;a[z+777>>0]=b&1;q=z+10996|0;a[z+778>>0]=((c[q>>2]|0)+1|0)>>>0>1&1;c[z+6528>>2]=0;c[q>>2]=-1;c[f>>2]=-1;c[i>>2]=-1;df(A,1.0,1.0);q=A;r=c[q+4>>2]|0;t=z+10436|0;c[t>>2]=c[q>>2];c[t+4>>2]=r;if(!(a[u>>0]|0))b=0;else b=(c[z+6900>>2]&16|0)!=0;do if(n|b){b=c[e>>2]|0;if(!b)break;i=z+220|0;h=+g[i>>2];if(!(h!=0.0))break;if(a[b+143>>0]|0)break;if(a[z+225>>0]|0){if(!(a[z+136>>0]|0))break;u=b+592|0;C=+g[u>>2];h=+Wh(h*.10000000149011612+C,.5,2.5);C=h/C;g[u>>2]=h;u=b+28|0;gf(x,u,1.0-C);t=b+20|0;rf(y,s,t);Yh(w,x,y);Xh(A,w,u);Zh(t,A);Zh(b+12|0,A);sf(u,C);sf(b+36|0,C);break}while(1){e=c[b+8>>2]|0;if((e&16777752|0)!=16777232)break;f=c[b+600>>2]|0;if(!f)break;else b=f}if(e&528|0)break;h=+_h(b)*5.0;C=+$h(b+68|0);C=+(~~+yf(h,(C+ +g[b+88>>2]*2.0)*.6700000166893005)|0);ai(b,+g[b+108>>2]-+g[i>>2]*C)}else{c[p>>2]=0;c[e>>2]=0}while(0);do if(!(c[v>>2]|0)){b=z+6144|0;e=c[b>>2]|0;if(!e)break;if(!(a[e+140>>0]|0))break;if(!(nh(0,0)|0))break;c[(c[b>>2]|0)+632>>2]=0}while(0);e=z+6088|0;if(c[e>>2]|0){b=0;do{y=c[(bi(e,b)|0)>>2]|0;x=y+140|0;a[y+141>>0]=a[x>>0]|0;a[x>>0]=0;a[y+142>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=z+6144|0;e=c[b>>2]|0;do if(e|0){if(a[e+141>>0]|0)break;ci()}while(0);di(z+6112|0,0);ei(z+6256|0,0);fi(c[b>>2]|0);df(A,400.0,400.0);gi(A,4);hi(5968,0,0)|0;l=B;return}Cb(5168,4833,2267,30213)}function Hh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Ih(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Jh(){var b=0,d=0,e=0,f=0;d=l;l=l+32|0;e=d;b=c[244]|0;f=Bf(12)|0;a[e>>0]=a[d+20>>0]|0;f=Lg(12,e,f)|0;ii(f);c[b+10488>>2]=f;c[e>>2]=5983;c[e+4>>2]=Gf(5983,0,0)|0;c[e+8>>2]=1;c[e+12>>2]=1;c[e+16>>2]=3;mi(b+10468|0,e);if(ni(b+10456|0)|0){oi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Cb(5990,4833,2592,6016)}function Kh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[244]|0;if(a|0?Ih(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Cb(11988,4833,5247,11973);e=f+5928|0;c[e>>2]=a;g[f+5936>>2]=+g[f+132>>2]*+g[a>>2]*b;d=c[f+6140>>2]|0;if(!d)b=0.0;else{b=+_h(d);a=c[e>>2]|0}g[f+5932>>2]=b;h=(c[a+68>>2]|0)+28|0;d=c[h+4>>2]|0;e=f+5940|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+5948>>2]=a;g[f+5952>>2]=b;return}Cb(11948,4833,5246,11973)}function Lh(){var a=0,b=0;b=c[244]|0;a=c[b+140>>2]|0;if(!a)a=c[(Hh((c[b+128>>2]|0)+36|0,0)|0)>>2]|0;return a|0}function Mh(){var b=0;b=c[244]|0;a[b+6896>>0]=0;nr(b+6908|0);c[b+6968>>2]=0;c[b+6964>>2]=0;g[b+6960>>2]=3402823466385288598117041.0e14;c[b+6972>>2]=-1;return}function Nh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Oh(a){a=a|0;a=(a|0)==0?(c[244]|0)+204|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function Ph(a){a=a|0;var b=0,d=0;b=c[244]|0;if((c[a+8>>2]&256|0)==0?(d=b+10452|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function Qh(a){a=a|0;var b=0,d=0,e=0,f=0;e=c[244]|0;c[e+6144>>2]=a;if(a|0){d=c[a+604>>2]|0;d=(d|0)==0?a:d;b=d+8|0;a=c[b>>2]|0;if((((a&67108864|0)!=0?(c[e+6172>>2]|0)!=0:0)?(f=c[e+6196>>2]|0,(f|0)!=0):0)?(c[f+604>>2]|0)!=(d|0):0){$g();a=c[b>>2]|0}if(!(a&8192))Fl(d)}return}function Rh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[244]|0)+10452>>2]=0.0;if(a|0){Hr(b);Bs(b);a=Yf(a,10962)|0;if(a|0){u9(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;k9(a)|0}Mr(b)}l=d;return}function Sh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[244]|0;j=k+6088|0;k=k+5176|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(bi(j,e)|0)>>2]|0;if(a[d+140>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}rf(h,d+448|0,k);tf(i,d+456|0,k);lj(g,h,i);if(nj(g,b)|0)break;else d=e}l=m;return d|0}function Th(){var a=0,b=0,d=0,e=0;a=c[244]|0;b=c[a+6244>>2]|0;a:do if((b|0)>0){e=c[a+6252>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*24|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function Uh(a,b){a=a|0;b=b|0;a:do if((c[a+604>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+600>>2]|0;if(!a){a=0;break}}while(0);return a|0}function Vh(a){a=a|0;return (c[a>>2]|0)==0|0}function Wh(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;df(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function Zh(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function _h(a){a=a|0;return +(+g[(c[244]|0)+5936>>2]*+g[a+592>>2])}function $h(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function ai(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function bi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function ci(){var b=0,d=0,e=0;e=(c[244]|0)+6088|0;b=c[e>>2]|0;a:do if((b|0)>0){while(1){d=b;b=b+-1|0;if(a[(c[(bi(e,b)|0)>>2]|0)+141>>0]|0?(c[(c[(bi(e,b)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((d|0)<=1)break a}Qh(c[(bi(e,b)|0)>>2]|0)}while(0);return}function di(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Oi(a,Ts(a,b)|0);c[a>>2]=b;return}function ei(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hu(a,iu(a,b)|0);c[a>>2]=b;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[244]|0)+6244|0;if(!(Vh(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+604|0;e=0;while(1){b=c[(Dj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Dj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Dj(h,b)|0)+4>>2]|0)+604>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Cb(11410,4833,3767,11462)}else{g=0;i=b}while(0);if((g|0)<(i|0))hk(g)}return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;f=a;e=c[f+4>>2]|0;a=d+6284|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6308>>2]=b|0?b:1;return}function hi(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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.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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=l;l=l+272|0;ea=ia+128|0;da=ia+104|0;fa=ia+256|0;i=ia+120|0;D=ia+224|0;L=ia+72|0;y=ia+216|0;w=ia+96|0;x=ia+240|0;$=ia+48|0;aa=ia+176|0;F=ia+88|0;G=ia+80|0;ba=ia+32|0;ca=ia+24|0;S=ia+160|0;T=ia+16|0;N=ia+8|0;O=ia;I=ia+64|0;J=ia+152|0;K=ia+144|0;V=ia+208|0;W=ia+192|0;ha=c[244]|0;if(!b)Cb(6802,4833,4348,30345);if(!(a[ha>>0]|0))Cb(6027,4833,4349,30345);k=ha+6076|0;if((c[ha+6080>>2]|0)==(c[k>>2]|0))Cb(6813,4833,4350,30345);q=(f&512|0)==0?f:f|6;f=Xj(b)|0;c[fa>>2]=f;if(!f){if(!(c[ha+6308>>2]|0)){df(da,0.0,0.0);h=da;f=c[h>>2]|0;h=c[h+4>>2]|0}else{h=ha+6284|0;f=c[h>>2]|0;h=c[h+4>>2]|0;_=da;c[_>>2]=f;c[_+4>>2]=h}_=i;c[_>>2]=f;c[_+4>>2]=h;c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];f=Ik(b,ea,q)|0;c[fa>>2]=f}v=c[k>>2]|0;i=c[f+480>>2]|0;_=(i|0)!=(v|0);h=f+8|0;if(_)c[h>>2]=q;else q=c[h>>2]|0;h=(i|0)<(v+-1|0);B=(c[f+184>>2]|0)==1;C=(q&67108864|0)!=0;if(C){R=Dj(ha+6244|0,c[ha+6256>>2]|0)|0;f=c[fa>>2]|0;R=h|(c[f+160>>2]|0)!=(c[R>>2]|0)|(f|0)!=(c[R+4>>2]|0)}else R=h;Z=B|R;a[f+145>>0]=Z&1;U=(e|0)!=0;a[f+146>>0]=U&1;if(Z)Jk(f,8,1);f=ha+6112|0;if(Kk(f)|0)z=0;else z=c[(Lk(f)|0)>>2]|0;if(_)X=q&83886080|0?z:0;else X=c[(c[fa>>2]|0)+600>>2]|0;Y=(X|0)!=0;u=q&16777216;Z=(u|0)==0;if(!(Z|Y))Cb(6847,4833,4387,30345);Mk(f,fa);Nk(c[fa>>2]|0);Ok(c[fa>>2]|0,1);if(C){P=ha+6256|0;Q=Dj(ha+6244|0,c[P>>2]|0)|0;c[Q+4>>2]=c[fa>>2];dk(P,Q);c[(c[fa>>2]|0)+160>>2]=c[Q>>2]}f=ha+6304|0;h=c[f>>2]|0;if(!h)s=0;else{i=c[fa>>2]|0;k=i+188|0;r=c[k>>2]|0;s=(r&h|0)!=0;if(s?(t=ha+6276|0,+xf(t)>9.999999747378752e-06):0){Q=ha+6268|0;P=c[Q+4>>2]|0;M=i+200|0;c[M>>2]=c[Q>>2];c[M+4>>2]=P;M=t;P=c[M+4>>2]|0;Q=i+208|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P;c[k>>2]=r&-15}else Pk(i,ha+6268|0,h);c[f>>2]=0}f=ha+6308|0;h=c[f>>2]|0;if(!h){i=0;r=0}else{k=c[fa>>2]|0;if(!(c[k+192>>2]&h)){i=0;r=0}else{i=+g[ha+6284>>2]>0.0;r=+g[ha+6288>>2]>0.0}Qk(k,ha+6284|0,h);c[f>>2]=0}f=ha+6312|0;if(!(c[f>>2]|0)){if(_){df(ea,0.0,0.0);M=ea;P=c[M+4>>2]|0;Q=(c[fa>>2]|0)+60|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}}else{Q=c[fa>>2]|0;H=ha+6292|0;M=c[H+4>>2]|0;P=Q+60|0;c[P>>2]=c[H>>2];c[P+4>>2]=M;E=+Rk(Q);E=E+ +Sk(c[fa>>2]|0);Q=(c[fa>>2]|0)+64|0;g[Q>>2]=E+ +g[Q>>2];c[f>>2]=0}f=ha+6316|0;h=c[f>>2]|0;if(h|0){Tk(c[fa>>2]|0,(a[ha+6300>>0]|0)!=0,h);c[f>>2]=0}f=ha+6345|0;if(a[f>>0]|0){Uk();a[f>>0]=0}f=c[fa>>2]|0;if(a[f+145>>0]|0)Jk(f,8,0);f=c[fa>>2]|0;if(_){c[f+600>>2]=X;k=f+608|0;c[k>>2]=f;h=f+604|0;c[h>>2]=f;if(!(Z|Y^1))c[h>>2]=c[X+604>>2];A=(q&134217728|0)==0;if(!((q&83886080|0)==0|A&Y^1))c[k>>2]=c[X+608>>2];a[f+140>>0]=1;c[f+148>>2]=0;Q=ha+6136|0;H=c[Q>>2]|0;c[Q>>2]=H+1;c[f+152>>2]=H;c[f+156>>2]=0;Of(da,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ki(ea,da);H=c[fa>>2]|0;Q=H+432|0;c[Q>>2]=c[ea>>2];c[Q+4>>2]=c[ea+4>>2];c[Q+8>>2]=c[ea+8>>2];c[Q+12>>2]=c[ea+12>>2];c[H+480>>2]=v;Vk(H+420|0,1);Hu(c[(c[fa>>2]|0)+596>>2]|0);H=c[(c[fa>>2]|0)+596>>2]|0;c[H+36>>2]=(a[ha+5233>>0]|0?2:0)|d[ha+5232>>0];lv(H,c[(c[ha+5928>>2]|0)+68>>2]|0);Wk(D);H=(u|0)!=0;u=C|H^1;if(u)Hi(D,D+8|0,1);else Hi(X+432|0,X+440|0,1);do if(R){f=c[fa>>2]|0;c[f+180>>2]=-1;if(s|C^1)break;M=ha+204|0;P=c[M+4>>2]|0;Q=f+12|0;c[Q>>2]=c[M>>2];c[Q+4>>2]=P}while(0);M=(q&1|0)!=0;Q=M^1;P=(q&32|0)==0;if(P&Q){Xk(ea,c[fa>>2]|0);do if((c[ha+6148>>2]|0)==(c[fa>>2]|0)){if(!(hh(ea,ea+8|0,1)|0))break;if(!(a[ha+881>>0]|0))break;v=c[fa>>2]|0;t=v+143|0;a[t>>0]=a[t>>0]^1;Ph(v);Qh(c[fa>>2]|0)}while(0);f=c[fa>>2]|0}else{f=c[fa>>2]|0;a[f+143>>0]=0}Yk(ea,f);f=c[fa>>2]|0;v=ea;k=c[v+4>>2]|0;h=f+52|0;c[h>>2]=c[v>>2];c[h+4>>2]=k;h=f+184|0;k=c[h>>2]|0;if((k|0)>0)c[h>>2]=k+-1;do if(!((q&100663296|0)==0|R^1)){c[h>>2]=1;if(!(q&64))break;if(!i){g[f+36>>2]=0.0;g[f+28>>2]=0.0}if(!r){g[f+40>>2]=0.0;g[f+32>>2]=0.0}df(ea,0.0,0.0);f=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;v=f+52|0;c[v>>2]=c[k>>2];c[v+4>>2]=t}while(0);do if(!H){v=(q&201326592|0)==67108864;t=c[(v?ha+5136|0:ha+5104|0)>>2]|0;c[f+92>>2]=t;m=(c[j>>2]=t,+g[j>>2]);if(v){h=ha+5140|0;break}else{h=ha+5108|0;break}}else{v=c[ha+5128>>2]|0;c[f+92>>2]=v;h=ha+5132|0;m=(c[j>>2]=v,+g[j>>2])}while(0);v=c[h>>2]|0;c[f+96>>2]=v;h=ha+5096|0;k=c[h+4>>2]|0;t=f+84|0;c[t>>2]=c[h>>2];c[t+4>>2]=k;n=(c[j>>2]=v,+g[j>>2]);if((q&83951616|0)==16777216&n==0.0){if(!(q&1024))m=0.0;else m=+g[ha+5100>>2];df(ea,0.0,m);v=c[fa>>2]|0;k=ea;t=c[k+4>>2]|0;f=v+84|0;c[f>>2]=c[k>>2];c[f+4>>2]=t;E=+g[v+96>>2];f=v;p=+g[v+92>>2]}else{E=n;p=m}Zk(L,f,f+52|0);df(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);v=(q&64|0)!=0;f=c[fa>>2]|0;do if(v){if(a[f+143>>0]|0){ga=90;break}if(!i){t=c[L>>2]|0;c[y>>2]=t;c[f+36>>2]=t}if(r)break;t=c[L+4>>2]|0;c[y+4>>2]=t;c[f+40>>2]=t}else ga=90;while(0);do if((ga|0)==90){h=(c[f+164>>2]|0)>0;if(!h?(c[f+168>>2]|0)<=0:0)break;if(!(i|h^1)){if(!(a[f+172>>0]|0)){h=f+36|0;m=+g[L>>2]}else{t=f+36|0;h=t;m=+vg(+g[t>>2],+g[L>>2])}g[y>>2]=m;g[h>>2]=m}do if(!r){if((c[f+168>>2]|0)<=0)break;if(!(a[f+172>>0]|0)){h=f+40|0;m=+g[L+4>>2]}else{t=f+40|0;h=t;m=+vg(+g[t>>2],+g[L+4>>2])}g[y+4>>2]=m;g[h>>2]=m}while(0);if(a[f+143>>0]|0)break;Ph(f);f=c[fa>>2]|0}while(0);t=f+36|0;h=c[t+4>>2]|0;k=w;c[k>>2]=c[t>>2];c[k+4>>2]=h;c[ea>>2]=c[w>>2];c[ea+4>>2]=c[w+4>>2];_k(da,f,ea);f=c[fa>>2]|0;k=da;h=c[k>>2]|0;k=c[k+4>>2]|0;w=f+36|0;c[w>>2]=h;c[w+4>>2]=k;if(!(a[f+143>>0]|0)){t=ea;c[t>>2]=h;c[t+4>>2]=k;t=h}else{Xk(x,f);eh(ea,x);k=ea;f=c[fa>>2]|0;t=c[k>>2]|0;k=c[k+4>>2]|0}h=f+28|0;x=h;c[x>>2]=t;c[x+4>>2]=k;do if(!u)if(r&i){u=f+36|0;w=c[u+4>>2]|0;x=h;c[x>>2]=c[u>>2];c[x+4>>2]=w;break}else Cb(6910,4833,4567,30345);while(0);if(!(a[f+143>>0]|0)){x=f+44|0;w=f+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(q&16384)){if(!(+g[f+56>>2]>o)){u=0;break}u=(q&8|0)==0}else u=1;while(0);t=f+129|0;h=u&1;a[t>>0]=h;do if(!(q&32768)){if(u)m=+g[ha+5192>>2];else m=0.0;k=q&2048;r=f+128|0;if((q&8|0)==0?+g[f+52>>2]>n-m-+g[f+84>>2]:0){i=k>>>11&255;a[r>>0]=i;if(!k){f=i;break}else{ga=123;break}}else{a[r>>0]=0;f=0;break}}else{a[f+128>>0]=1;i=1;ga=123}while(0);do if((ga|0)==123){if(u){f=i;break}h=((q&8|0)==0?+g[f+56>>2]>o+ +g[ha+5192>>2]:0)&1;a[t>>0]=h;f=i}while(0);if(!(h<<24>>24))n=0.0;else n=+g[ha+5192>>2];if(!(f<<24>>24))m=0.0;else m=+g[ha+5192>>2];df(ea,n,m);f=c[fa>>2]|0;x=ea;y=c[x+4>>2]|0;ga=f+132|0;c[ga>>2]=c[x>>2];c[ga+4>>2]=y}do if(H){ga=X+300|0;c[f+148>>2]=c[ga>>2];Mk(ga,fa);if(C|s){f=c[fa>>2]|0;break}else{f=c[fa>>2]|0;y=X+216|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ga=f+12|0;c[ga>>2]=x;c[ga+4>>2]=y;ga=f+20|0;c[ga>>2]=x;c[ga+4>>2]=y;break}}while(0);do if(+g[f+200>>2]!=3402823466385288598117041.0e14){if(c[f+184>>2]|0){ga=137;break}Yh($,f+36|0,f+208|0);rf(da,f+200|0,$);$k(ea,ha+5224|0,da);Pk(f,ea,0);ga=146}else ga=137;while(0);do if((ga|0)==137){if(!(q&268435456)){if(s|C^1|B^1){ga=146;break}n=+g[f+12>>2];o=+g[f+16>>2];al(ea,n+-1.0,o+-1.0,n+1.0,o+1.0);z=c[fa>>2]|0;bl(da,z+12|0,z+28|0,z+180|0,ea,0);z=da;B=c[z+4>>2]|0;ga=(c[fa>>2]|0)+12|0;c[ga>>2]=c[z>>2];c[ga+4>>2]=B;ga=146;break}if(!s)Cb(6963,4833,4607,30345);m=+g[ha+5160>>2];Eg(ea);if(!(a[z+293>>0]|0)){o=+g[z+20>>2];al(da,m+o,-3402823466385288598117041.0e14,o+ +g[z+28>>2]-m-+g[z+132>>2],3402823466385288598117041.0e14);c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}else{B=z+24|0;n=+g[B>>2];n=n+ +Rk(z);o=+g[B>>2];o=o+ +Rk(z);al(da,-3402823466385288598117041.0e14,n,3402823466385288598117041.0e14,o+ +Sk(z));c[ea>>2]=c[da>>2];c[ea+4>>2]=c[da+4>>2];c[ea+8>>2]=c[da+8>>2];c[ea+12>>2]=c[da+12>>2]}f=c[fa>>2]|0;bl(da,f+12|0,f+28|0,f+180|0,ea,0);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=(q&33554432|0)!=0}while(0);do if((ga|0)==146){i=(q&33554432|0)!=0;if(!(s|i^1)?(B=ha+204|0,x=c[B>>2]|0,B=c[B+4>>2]|0,y=ea,c[y>>2]=x,c[y+4>>2]=B,n=(c[j>>2]=x,+g[j>>2]),o=(c[j>>2]=B,+g[j>>2]),al(da,n+-16.0,o+-8.0,n+24.0,o+24.0),B=c[fa>>2]|0,bl($,ea,B+28|0,B+180|0,da,0),B=c[fa>>2]|0,x=$,y=c[x+4>>2]|0,z=B+12|0,c[z>>2]=c[x>>2],c[z+4>>2]=y,(c[B+180>>2]|0)==-1):0){df(aa,2.0,2.0);tf($,ea,aa);y=$;z=c[y+4>>2]|0;B=(c[fa>>2]|0)+12|0;c[B>>2]=c[y>>2];c[B+4>>2]=z}h=c[fa>>2]|0;if((q&50331648|0)!=0|s){f=h;h=i;break}if((c[h+164>>2]|0)>=1){f=h;h=i;break}if((c[h+168>>2]|0)>=1){f=h;h=i;break}f=ha+4|0;if(!(+g[f>>2]>0.0)){f=h;h=i;break}if(!(+g[ha+8>>2]>0.0)){f=h;h=i;break}$k(ea,ha+5216|0,ha+5224|0);z=c[fa>>2]|0;tf(aa,z+12|0,z+28|0);$k($,aa,ea);rf(da,$,(c[fa>>2]|0)+28|0);z=(c[fa>>2]|0)+12|0;y=da;h=c[y+4>>2]|0;B=z;c[B>>2]=c[y>>2];c[B+4>>2]=h;rf($,f,ea);cl(da,z,$);f=c[fa>>2]|0;z=da;B=c[z+4>>2]|0;h=f+12|0;c[h>>2]=c[z>>2];c[h+4>>2]=B;h=i}while(0);df(ea,+(~~+g[f+12>>2]|0),+(~~+g[f+16>>2]|0));s=c[fa>>2]|0;y=ea;z=c[y+4>>2]|0;B=s+20|0;c[B>>2]=c[y>>2];c[B+4>>2]=z;m=+g[s+28>>2];if(v|(h|!(m>0.0)))m=+g[ha+5932>>2]*16.0;else m=m*.6499999761581421;g[s+484>>2]=+(~~m|0);r=s+628|0;f=c[r>>2]|0;do if((f|0)==2147483647)f=2147483647;else{B=c[s+612>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+620>>2]=f;k=s+632|0;f=c[k>>2]|0;i=s+616|0;do if((f|0)==2147483647)f=2147483647;else{B=c[i>>2]|0;h=B+1|0;if((B|0)==-1){f=2147483647;break}f=(h+f|0)%(h|0)|0}while(0);c[s+624>>2]=f;c[i>>2]=-1;c[s+612>>2]=-1;c[k>>2]=2147483647;c[r>>2]=2147483647;dl(ea,s);B=ea;y=c[B+4>>2]|0;f=(c[fa>>2]|0)+104|0;c[f>>2]=c[B>>2];c[f+4>>2]=y;df(ea,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=c[fa>>2]|0;y=ea;B=c[y+4>>2]|0;z=f+112|0;c[z>>2]=c[y>>2];c[z+4>>2]=B;z=((q&50331648|0)==0|C)&((q&4096|0)==0&R);do if(!A){if((f|0)!=(Th()|0))break;f=c[f+596>>2]|0;Qv(f,D,D+8|0,Rf(41,+g[ha+6408>>2])|0,0.0,15);f=c[fa>>2]|0}while(0);Xk($,f);f=c[fa>>2]|0;if(!(a[f+143>>0]|0)){c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;x=q&131072;y=x>>>17;x=x>>>15;n=+g[ha+5932>>2];n=+(~~+vg(n*1.350000023841858,p+1.0+n*.20000000298023224)|0);m=+(~~(n*.75)|0);do if(v)f=-1;else{if((c[f+164>>2]|0)>=1){f=-1;break}if(!((q&2|0)==0?(c[f+168>>2]|0)<1:0)){f=-1;break}df(aa,3402823466385288598117041.0e14,3402823466385288598117041.0e14);df(ba,3402823466385288598117041.0e14,3402823466385288598117041.0e14);el(6985);r=ha+6148|0;s=ha+204|0;t=ha+6188|0;u=ha+881|0;w=ha+6528|0;k=0;while(1){i=c[fa>>2]|0;f=i+20|0;tf(ea,f,i+28|0);i=57824+(k*24|0)|0;fl(ca,f,ea,i);gf(T,57824+(k*24|0)+8|0,m);tf(ea,ca,T);lj(S,ca,ea);gl(S);hl(S,Xg(c[fa>>2]|0,k)|0,T,N,32)|0;f=a[N>>0]|0;if((f|a[T>>0])<<24>>24)c[w>>2]=6-k;h=c[r>>2]|0;f=f<<24>>24==0;do if((h|0)!=(c[fa>>2]|0)|f)ga=181;else{if(!((k|0)==0&(a[u>>0]|0)!=0)){ga=181;break}G=L;f=c[G+4>>2]|0;ga=I;c[ga>>2]=c[G>>2];c[ga+4>>2]=f;c[ea>>2]=c[I>>2];c[ea+4>>2]=c[I+4>>2];_k(O,h,ea);ga=O;h=c[ga+4>>2]|0;f=ba;c[f>>2]=c[ga>>2];c[f+4>>2]=h;$g();f=a[N>>0]|0;h=a[T>>0]|0;ga=184}while(0);if((ga|0)==181){ga=0;if(!f){rf(O,s,t);eh(K,S);Yh(J,K,i);tf(ea,O,J);il(c[fa>>2]|0,ea,i,aa,ba)}f=a[N>>0]|0;h=a[T>>0]|0;if(!((k|0)!=0&(h|f)<<24>>24==0))ga=184}if((ga|0)==184){ga=0;c[da+(k<<2)>>2]=Rf(f<<24>>24==0?(h<<24>>24?31:30):32,1.0)|0}if((k|0)==(y|0))break;else k=k+1|0}if(!x)f=-1;else{k=ha+208|0;r=ha+6192|0;s=T+4|0;t=ha+204|0;u=ha+6188|0;v=ha+6168|0;f=-1;i=0;do{jl(S,c[fa>>2]|0,i,m,5.0);hl(S,Xg(c[fa>>2]|0,i+4|0)|0,ea,ca,32)|0;do if(a[ea>>0]|0){h=a[ca>>0]|0;if(!(+g[v>>2]>.05000000074505806)&h<<24>>24==0)break;c[w>>2]=(i&1)+3;if(h<<24>>24)ga=192}else{if(!(a[ca>>0]|0))break;c[w>>2]=(i&1)+3;ga=192}while(0);if((ga|0)==192){ga=0;J=(c[fa>>2]|0)+20|0;K=c[J+4>>2]|0;L=T;c[L>>2]=c[J>>2];c[L+4>>2]=K;bf(N);switch(i|0){case 0:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2];break}case 1:{df(O,1.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2]+5.0;break}case 2:{df(O,0.0,1.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[s>>2]=+g[k>>2]-+g[r>>2]+5.0;break}case 3:{df(O,0.0,0.0);J=O;K=c[J+4>>2]|0;L=N;c[L>>2]=c[J>>2];c[L+4>>2]=K;g[T>>2]=+g[t>>2]-+g[u>>2];break}default:{}}il(c[fa>>2]|0,T,N,aa,ba);f=i}i=i+1|0}while((i|0)!=(x|0))}kl();if(+g[ba>>2]!=3402823466385288598117041.0e14){O=c[fa>>2]|0;K=ba;L=c[K+4>>2]|0;N=O+36|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Ph(O)}m=+g[aa>>2];if(m!=3402823466385288598117041.0e14){df(ea,+(~~m|0),+(~~+g[aa+4>>2]|0));O=c[fa>>2]|0;L=ea;K=c[L>>2]|0;L=c[L+4>>2]|0;N=O+12|0;c[N>>2]=K;c[N+4>>2]=L;N=O+20|0;c[N>>2]=K;c[N+4>>2]=L;Ph(O)}O=c[fa>>2]|0;K=O+36|0;L=c[K+4>>2]|0;N=O+28|0;c[N>>2]=c[K>>2];c[N+4>>2]=L;Xk(ea,O);c[$>>2]=c[ea>>2];c[$+4>>2]=c[ea+4>>2];c[$+8>>2]=c[ea+8>>2];c[$+12>>2]=c[ea+12>>2]}while(0);O=Rf(ll(q)|0,1.0)|0;L=c[fa>>2]|0;N=c[L+596>>2]|0;df(aa,0.0,+Rk(L));tf(ea,L+20|0,aa);L=c[fa>>2]|0;tf(ba,L+20|0,L+28|0);Qv(N,ea,ba,O,p,M?15:12);do if(z)h=1;else{h=c[ha+6144>>2]|0;if(!h){h=0;break}h=(c[(c[fa>>2]|0)+608>>2]|0)==(c[h+608>>2]|0)}while(0);if(!M){O=c[(c[fa>>2]|0)+596>>2]|0;Qv(O,$,$+8|0,Rf(h?11:10,1.0)|0,p,3)}if(q&1024|0){ml(ea,c[fa>>2]|0);nl(aa,c[fa>>2]|0);mj(ea,aa);O=c[(c[fa>>2]|0)+596>>2]|0;h=Rf(13,1.0)|0;Qv(O,ea,ea+8|0,h,M?p:0.0,3);h=ha+5156|0;do if(+g[h>>2]>0.0){i=c[fa>>2]|0;if(!(+g[ea+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;N=c[i+596>>2]|0;ol(aa,ea);pl(ba,ea);O=Rf(5,1.0)|0;Ov(N,aa,ba,O,+g[h>>2])}while(0)}h=c[fa>>2]|0;if(a[h+128>>0]|0){ql(1);h=c[fa>>2]|0}if(a[h+129>>0]|0)ql(0);if(!(q&2)){m=p+E;k=ea+4|0;i=0;while(1){r=c[fa>>2]|0;h=r+20|0;tf(aa,h,r+28|0);fl(ea,h,aa,57824+(i*24|0)|0);h=c[(c[fa>>2]|0)+596>>2]|0;r=57824+(i*24|0)+8|0;s=(i|0)!=0;if(s)df(ca,E,n);else df(ca,n,E);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);h=c[(c[fa>>2]|0)+596>>2]|0;if(s)df(ca,n,E);else df(ca,E,n);Yh(ba,r,ca);tf(aa,ea,ba);ij(h,aa);O=c[(c[fa>>2]|0)+596>>2]|0;df(aa,+g[ea>>2]+m*+g[r>>2],+g[k>>2]+m*+g[57824+(i*24|0)+12>>2]);Hv(O,aa,p,c[57824+(i*24|0)+16>>2]|0,c[57824+(i*24|0)+20>>2]|0);rl(c[(c[fa>>2]|0)+596>>2]|0,c[da+(i<<2)>>2]|0);if((i|0)==(y|0))break;else i=i+1|0}}if(E>0.0){L=c[fa>>2]|0;N=c[L+596>>2]|0;O=L+20|0;tf(ea,O,L+28|0);Pv(N,O,ea,Rf(5,1.0)|0,p,15,E)}if((f|0)!=-1){jl(ea,c[fa>>2]|0,f,n,0.0);N=c[(c[fa>>2]|0)+596>>2]|0;O=Rf(29,1.0)|0;Ov(N,ea,ea+8|0,O,+vg(1.0,E))}f=ha+5156|0;if(!(M|!(+g[f>>2]>0.0))){O=c[(c[fa>>2]|0)+596>>2]|0;ol(aa,$);N=ha+5108|0;df(ba,+g[N>>2],-1.0);tf(ea,aa,ba);pl(S,$);df(T,-+g[N>>2],-1.0);tf(ca,S,T);T=Rf(5,1.0)|0;Ov(O,ea,ca,T,+g[f>>2])}}else{T=ha+5156|0;S=c[T>>2]|0;c[T>>2]=c[f+96>>2];O=$;N=c[O+4>>2]|0;L=F;c[L>>2]=c[O>>2];c[L+4>>2]=N;L=$+8|0;N=c[L+4>>2]|0;O=G;c[O>>2]=c[L>>2];c[O+4>>2]=N;O=Rf(12,1.0)|0;c[da>>2]=c[F>>2];c[da+4>>2]=c[F+4>>2];c[ea>>2]=c[G>>2];c[ea+4>>2]=c[G+4>>2];dj(da,ea,O,1,p);c[T>>2]=S}f=c[fa>>2]|0;O=f+36|0;S=c[O+4>>2]|0;T=f+44|0;c[T>>2]=c[O>>2];c[T+4>>2]=S;g[f+68>>2]=+g[f+84>>2]-+g[f+104>>2];n=+g[f+88>>2]-+g[f+108>>2];n=n+ +Rk(f);n=n+ +Sk(c[fa>>2]|0);f=c[fa>>2]|0;g[f+72>>2]=n;n=+g[f+104>>2];o=+g[f+84>>2];m=+g[f+60>>2];if(!(m!=0.0))m=+g[f+28>>2]-+g[f+132>>2];g[f+76>>2]=-n-o+m;m=+g[f+64>>2];if(!(m!=0.0))m=+g[f+32>>2]-+g[f+136>>2];g[f+80>>2]=-+g[f+108>>2]-+g[f+88>>2]+m;p=o+0.0-n;g[f+404>>2]=p;g[f+408>>2]=0.0;g[f+412>>2]=0.0;E=+Rk(f);E=E+ +Sk(c[fa>>2]|0);S=c[fa>>2]|0;df(da,p+0.0,E+ +g[S+88>>2]-+g[S+108>>2]);tf(ea,f+20|0,da);S=c[fa>>2]|0;O=ea;N=c[O>>2]|0;O=c[O+4>>2]|0;T=S+232|0;c[T>>2]=N;c[T+4>>2]=O;T=S+216|0;c[T>>2]=N;c[T+4>>2]=O;T=S+224|0;c[T>>2]=N;c[T+4>>2]=O;T=S+240|0;c[T>>2]=N;c[T+4>>2]=O;T=S+248|0;a[S+293>>0]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;c[T+12>>2]=0;T=ha+5160|0;g[S+296>>2]=+vg(+g[S+84>>2],+g[T>>2]);g[S+264>>2]=(c[j>>2]=O,+g[j>>2])+-9999.0;di(S+300|0,0);S=c[fa>>2]|0;c[S+316>>2]=0;c[S+320>>2]=1;c[S+324>>2]=c[S+484>>2];g[S+328>>2]=-1.0;sl(S+332|0,0);tl((c[fa>>2]|0)+344|0,0);tl((c[fa>>2]|0)+356|0,0);S=c[fa>>2]|0;c[S+416>>2]=0;c[S+268>>2]=0;c[S+312>>2]=S+568;ul(S+368|0,0);tg((c[fa>>2]|0)+488|0,3,+g[T>>2],R);do if(H){f=c[fa>>2]|0;h=f+320|0;i=c[X+320>>2]|0;if((c[h>>2]|0)==(i|0))break;c[h>>2]=i;vl(f+332|0,h)}while(0);i=c[fa>>2]|0;f=i+164|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;f=i+168|0;h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1;if(z)Qh(i);if(!M){if(P){tf(V,(c[fa>>2]|0)+20|0,ha+5144|0);T=a[(c[fa>>2]|0)+143>>0]|0?1:3;c[ea>>2]=c[V>>2];c[ea+4>>2]=c[V+4>>2];fj(ea,T,1.0)}do if(U){E=(+Rk(c[fa>>2]|0)+-4.0)*.5;V=Kg(c[fa>>2]|0,6993,0)|0;nl(W,c[fa>>2]|0);xl(da,W);df(aa,-2.0-E,E+2.0);tf(ea,da,aa);if(!(wl(V,ea,E)|0))break;a[e>>0]=0}while(0);cj(ea,b,0,1,-1.0);e=c[fa>>2]|0;V=e+20|0;T=V;W=c[T>>2]|0;T=c[T+4>>2]|0;f=da;c[f>>2]=W;c[f+4>>2]=T;f=ha+5144|0;df(ba,+g[e+28>>2],+g[ha+5148>>2]*2.0+ +g[ea+4>>2]);tf(aa,V,ba);Eg(ba);V=c[fa>>2]|0;n=+g[V+20>>2]+ +g[V+28>>2];p=(c[j>>2]=W,+g[j>>2]);if(U){h=f;m=+$h($)+-3.0}else{h=f;m=+g[f>>2]}df(ca,n-m,+g[aa+4>>2]);e=ca;V=c[e+4>>2]|0;W=ba+8|0;c[W>>2]=c[e>>2];c[W+4>>2]=V;m=+g[h>>2];if(P)o=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];else o=m;if(U)m=m+ +g[ha+5932>>2]+ +g[ha+5168>>2];f=ha+5120|0;n=+g[f>>2];if(n>0.0)m=+yl(m,o,n);E=o+p;g[da>>2]=E;g[aa>>2]=+g[aa>>2]-m;df(ca,E,+g[(c[fa>>2]|0)+24>>2]);V=ca;W=c[V+4>>2]|0;ca=ba;c[ca>>2]=c[V>>2];c[ca+4>>2]=W;bj(da,aa,b,0,ea,f,ba)}nl(ea,c[fa>>2]|0);da=c[fa>>2]|0;f=da+448|0;c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];mj(f,da+432|0);da=c[fa>>2]|0;g[da+464>>2]=+g[$>>2]+ +g[da+96>>2];E=+g[$+12>>2];E=E+ +Sk(da);da=c[fa>>2]|0;f=da+96|0;g[da+468>>2]=E+ +g[((q&1024|0)!=0|Q?ha+5156|0:f)>>2];E=+g[f>>2];g[da+472>>2]=+g[da+20>>2]+ +g[da+28>>2]-+g[da+132>>2]-E;g[da+476>>2]=+g[da+24>>2]+ +g[da+32>>2]-+g[da+136>>2]-E;c[da+272>>2]=c[da+100>>2];da=da+276|0;c[da>>2]=c[$>>2];c[da+4>>2]=c[$+4>>2];c[da+8>>2]=c[$+8>>2];c[da+12>>2]=c[$+12>>2];da=hh($,$+8|0,0)|0;f=c[fa>>2]|0;a[f+292>>0]=da&1}E=+g[f+96>>2];Eg(ea);da=c[fa>>2]|0;p=+g[da+464>>2]+.5;E=+vg(0.0,+hf(+g[da+84>>2]*.5-E));g[ea>>2]=+hf(p+E);g[ea+4>>2]=+hf(+g[da+468>>2]+.5);k=ea+8|0;g[k>>2]=+hf(+g[da+472>>2]+.5-E);g[ea+12>>2]=+hf(+g[da+476>>2]+.5);Hi(ea,k,1);k=c[fa>>2]|0;if(_)a[k+142>>0]=0;fa=k+156|0;c[fa>>2]=(c[fa>>2]|0)+1;a[ha+6344>>0]=0;do if(!Z){if(!(q&1))Cb(7e3,4833,4953,30345);if(Y)f=a[X+143>>0]|0;else f=0;i=k+143|0;a[i>>0]=f;do if(!(q&64)){if((c[k+164>>2]|0)>=1)break;if((c[k+168>>2]|0)>=1)break;if(!(+g[k+448>>2]>=+g[k+456>>2]))h=+g[k+452>>2]>=+g[k+460>>2]&1;else h=1;f=(h|f&255)&255;a[i>>0]=f}while(0);if(!(f<<24>>24))break;a[k+140>>0]=0}while(0);if(+g[ha+5092>>2]<=0.0)a[k+140>>0]=0;if((a[k+143>>0]|0)==0?(a[k+140>>0]|0)!=0:0)f=0;else ga=282;do if((ga|0)==282){if((c[k+164>>2]|0)>=1){f=0;break}f=(c[k+168>>2]|0)<1&1}while(0);a[k+144>>0]=f;l=ia;return f<<24>>24==0|0}function ii(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hr(b);a[d>>0]=0;qs(b,d);l=c;return}function ji(a,b){a=a|0;b=b|0;a=Ei(Gf(b,0,0)|0)|0;if(!a)a=ss(b)|0;return a|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;f=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=f;do if((y9(e,10870,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=f;if((y9(e,10880,j)|0)==2){df(i,+g[b>>2],+g[f>>2]);$k(j,i,(c[244]|0)+5112|0);k=c[j+4>>2]|0;e=d+16|0;c[e>>2]=c[j>>2];c[e+4>>2]=k;break}c[k>>2]=h;if((y9(e,10891,k)|0)==1)a[d+24>>0]=(c[h>>2]|0)!=0&1}else{df(i,+g[b>>2],+g[f>>2]);j=i;k=c[j+4>>2]|0;e=d+8|0;c[e>>2]=c[j>>2];c[e+4>>2]=k}while(0);l=m;return}function li(b,e){b=b|0;e=e|0;var f=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;q=l;l=l+48|0;n=q+32|0;p=q+24|0;o=q+16|0;m=q+8|0;k=q;j=b+6088|0;if(c[j>>2]|0){h=0;do{i=c[(bi(j,h)|0)>>2]|0;if(!(c[i+8>>2]&256)){f=Ei(c[i+4>>2]|0)|0;if(!f)f=ss(c[i>>2]|0)|0;r=i+20|0;s=c[r+4>>2]|0;t=f+8|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;t=i+36|0;s=c[t+4>>2]|0;r=f+16|0;c[r>>2]=c[t>>2];c[r+4>>2]=s;a[f+24>>0]=a[i+143>>0]|0}h=h+1|0}while((h|0)!=(c[j>>2]|0))}t=Kn(e)|0;i=b+10456|0;ys(e,((c[i>>2]|0)*96|0)+t|0);if(c[i>>2]|0){f=0;do{h=ti(i,f)|0;b=h+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){s=c[h>>2]|0;t=f8(s,10904)|0;c[k>>2]=(t|0)==0?s:t;rg(e,10908,k);t=~~+g[h+12>>2];c[m>>2]=~~+g[b>>2];c[m+4>>2]=t;rg(e,10922,m);t=~~+g[h+20>>2];c[o>>2]=~~+g[h+16>>2];c[o+4>>2]=t;rg(e,10933,o);c[p>>2]=d[h+24>>0];rg(e,10945,p);rg(e,7805,n)}f=f+1|0}while((f|0)!=(c[i>>2]|0))}l=q;return}function mi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))ju(a,b);else ku(a,c[a+8>>2]|0,b)|0;return}function ni(a){a=a|0;return (c[a>>2]|0)==0|0}function oi(a){a=a|0;var b=0;if(a|0?(b=Zf(a,10959,0,1)|0,b|0):0){As(b);_f(b)}return}function pi(){var b=0,d=0,e=0;e=c[244]|0;b=c[e+128>>2]|0;if(b|0)rw(b);if(a[e>>0]|0){Rh(c[e+20>>2]|0);d=e+6088|0;if((c[d>>2]|0)>0){b=0;do{qi(bi(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ri(d);ri(e+6100|0);c[e+6140>>2]=0;ri(e+6112|0);si(e+6124|0);c[e+6144>>2]=0;c[e+6148>>2]=0;c[e+6152>>2]=0;c[e+6196>>2]=0;c[e+6200>>2]=0;d=e+10456|0;if((c[d>>2]|0)>0){b=0;do{Ug(ti(d,b)|0);b=b+1|0}while((b|0)<(c[d>>2]|0))}ui(e+6208|0);vi(e+6220|0);wi(e+6232|0);xi(e+6244|0);xi(e+6256|0);c[e+6336>>2]=0;c[e+6340>>2]=0;b=0;do{yi(e+6372+(b*12|0)|0);b=b+1|0}while((b|0)!=3);Uu(e+6412|0);zi(e+10424|0);Ai(e+7e3|0);zi(e+7012|0);zi(e+7024|0);Bi(d);Ci(e+10468|0);b=e+10484|0;d=c[b>>2]|0;if(!((d|0)==0|(d|0)==(c[931]|0))){k9(d)|0;c[b>>2]=0}b=e+10488|0;if(c[b>>2]|0)Di(b);a[e>>0]=0}return}function qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Sg(b);_f(c[a>>2]|0);c[a>>2]=0}return}function ri(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function si(a){a=a|0;zs(a);return}function ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function ui(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function vi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function wi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function xi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function yi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function zi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ai(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Bi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Ci(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Es(b);_f(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10456|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(ti(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=ti(d,b)|0}while(0);return b|0}function Fi(a){a=a|0;var b=0,d=0;d=(c[244]|0)+10468|0;a:do if((c[d>>2]|0)>0){b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}else b=0;while(0);return b|0}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Cb(12740,37262,1030,12749);return 0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Ii()|0;h=g+596|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];fv(j,i,f,d);Ki(f,Ji((c[h>>2]|0)+60|0)|0);d=g+432|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Ii(){var b=0;b=c[(c[244]|0)+6140>>2]|0;a[b+142>>0]=1;return b|0}function Ji(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Cb(37253,37262,1040,13011);return 0}function Ki(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+4>>2]);df(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function Li(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Ii()|0;e=b+596|0;jv(c[e>>2]|0);Ki(d,Ji((c[e>>2]|0)+60|0)|0);b=b+432|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function Mi(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[244]|0;if(!(a[m>>0]|0))Cb(6027,4833,2902,30229);n=m+6080|0;o=m+6076|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+196|0;if(c[f>>2]|0?(d=m+10436|0,e=m+10444|0,rf(h,d,e),+xf(h)>9.999999747378752e-05):0){oe[c[f>>2]&127](~~+g[d>>2],~~+g[m+10440>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6112>>2]|0)!=1)Cb(6041,4833,2914,30229);d=c[m+6140>>2]|0;if(d|0?(a[d+142>>0]|0)==0:0)a[d+140>>0]=0;Ni();do if((c[m+6172>>2]|0)==0?(c[m+6156>>2]|0)==0:0){j=c[m+6144>>2]|0;d=(j|0)==0;if(!d?a[j+145>>0]|0:0)break;do if(a[m+876>>0]|0){e=m+6152|0;if(!(c[e>>2]|0)){if(d)break;if(Th()|0)break;Qh(0);break}else{f=m+6148|0;Qh(c[f>>2]|0);f=c[f>>2]|0;if(c[f+8>>2]&4|0)break;d=c[e>>2]|0;if(c[d+8>>2]&4|0)break;i=m+6200|0;c[i>>2]=f;j=c[f+100>>2]|0;c[m+6204>>2]=j;_g(j,d);rf(h,m+204|0,(c[(c[i>>2]|0)+604>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6188|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;break}}while(0);if(a[m+877>>0]|0){d=Th()|0;e=(d|0)==0;j=m+6088|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6148|0;while(1){h=f;f=f+-1|0;e=c[(bi(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6148>>2]|0;fi(d)}}while(0);f=m+6100|0;di(f,0);h=m+6088|0;Oi(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(bi(h,d)|0)>>2]|0;if(!((a[e+140>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))Pi(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){Qi(h,f);g[m+220>>2]=0.0;d=m+742|0;e=d+34|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Cb(6072,4833,2979,30229)}while(0);l=p;return}function Ni(){var a=0,b=0,d=0,e=0;a=c[244]|0;d=c[a+6140>>2]|0;if(c[d+416>>2]|0)zl();Li();e=d+8|0;if(!(c[e>>2]&16777216))Al();b=a+6112|0;Bl(b);if(c[e>>2]&67108864|0)Cl(a+6256|0);Ok(d,0);if(Kk(b)|0)a=0;else a=c[(Lk(b)|0)>>2]|0;Nk(a);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;Mk(b,g);d=c[g>>2]|0;do if(a[d+140>>0]|0){d=d+300|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{S7(Hl(d)|0,f,4,2);d=0}do{e=c[(bi((c[g>>2]|0)+300|0,d)|0)>>2]|0;if(a[e+140>>0]|0)Pi(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Ri(){var b=0,d=0,e=0,f=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,v=0,w=0;u=l;l=l+64|0;h=u+56|0;i=u;j=u+48|0;k=u+40|0;m=u+32|0;n=u+24|0;o=u+16|0;p=u+8|0;t=c[244]|0;if(!(a[t>>0]|0))Cb(6027,4833,2992,30222);b=c[t+6080>>2]|0;d=t+6076|0;if((b|0)!=(c[d>>2]|0)){Mi();b=c[d>>2]|0}c[t+6084>>2]=b;if(+g[t+5092>>2]>0.0){c[t+796>>2]=0;q=t+792|0;c[q>>2]=0;r=t+788|0;c[r>>2]=0;b=0;do{Si(t+6372+(b*12|0)|0,0);b=b+1|0}while((b|0)!=3);d=t+6088|0;if(c[d>>2]|0){b=0;do{e=c[(bi(d,b)|0)>>2]|0;if((a[e+140>>0]|0?(c[e+184>>2]|0)<1:0)?(c[e+8>>2]&16777216|0)==0:0)Ti(e);b=b+1|0}while((b|0)!=(c[d>>2]|0))}f=t+6372|0;b=c[f>>2]|0;d=1;e=b;do{e=(c[t+6372+(d*12|0)>>2]|0)+e|0;d=d+1|0}while((d|0)!=3);Si(f,e);e=1;do{d=t+6372+(e*12|0)|0;if(!(Ui(d)|0)){w=Vi(f,b)|0;v=Vi(d,0)|0;Zaa(w|0,v|0,c[d>>2]<<2|0)|0;b=(c[d>>2]|0)+b|0}e=e+1|0}while((e|0)!=3);if(a[t+224>>0]|0){v=c[t+6528>>2]|0;rf(h,t+204|0,t+6532+(v*52|0)+4|0);d=t+6532+(v*52|0)+12|0;b=c[d+4>>2]|0;w=i;c[w>>2]=c[d>>2];c[w+4>>2]=b;c[j>>2]=c[c[t+128>>2]>>2];w=t+6412|0;lv(w,j);b=c[j>>2]|0;df(m,1.0,0.0);tf(k,h,m);df(p,1.0,0.0);tf(o,h,p);tf(n,o,i);d=t+6532+(v*52|0)+28|0;e=t+6532+(v*52|0)+44|0;ew(w,b,k,n,d,e,805306368);b=c[j>>2]|0;df(m,2.0,0.0);tf(k,h,m);df(p,2.0,0.0);tf(o,h,p);tf(n,o,i);ew(w,b,k,n,d,e,805306368);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,d,e,-16777216);p=c[j>>2]|0;tf(k,h,i);ew(w,p,h,k,t+6532+(v*52|0)+20|0,t+6532+(v*52|0)+36|0,-1);nv(w)}if(!(Wi(t+6436|0)|0))Xi(f,t+6412|0);d=t+6352|0;a[d>>0]=1;b=c[f>>2]|0;if((b|0)>0){e=Vi(f,0)|0;b=c[f>>2]|0}else e=0;c[t+6356>>2]=e;c[t+6360>>2]=b;c[t+6364>>2]=c[r>>2];c[t+6368>>2]=c[q>>2];if((b|0)>0?(s=c[t+172>>2]|0,s|0):0)je[s&127](d)}l=u;return}function Si(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ls(a,Ms(a,b)|0);c[a>>2]=b;return}function Ti(a){a=a|0;var b=0,d=0;b=c[244]|0;d=b+796|0;c[d>>2]=(c[d>>2]|0)+1;d=c[a+8>>2]|0;do if(!(d&67108864))if(!(d&33554432)){Gs(b+6372|0,a);break}else{Gs(b+6396|0,a);break}else Gs(b+6384|0,a);while(0);return}function Ui(a){a=a|0;return (c[a>>2]|0)==0|0}function Vi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Cb(12740,37262,1030,12749);return 0}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(Hs(b)|0)){d=Is(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Js(b),Hs(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Cb(10965,4833,2836,11080);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Cb(11104,4833,2837,11080);if((c[b+48>>2]|0)!=(d|0))Cb(11219,4833,2838,11080);if(d>>>0<65536){Ks(a,e);e=c[e>>2]|0;g=c[244]|0;d=g+788|0;c[d>>2]=(c[d>>2]|0)+(c[e+24>>2]|0);g=g+792|0;c[g>>2]=(c[g>>2]|0)+(c[e+12>>2]|0);break}else Cb(11279,4833,2849,11080)}while(0);l=f;return}function Yi(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[244]|0;if(a[f+10480>>0]|0){c[e>>2]=d;d=c[f+10484>>2]|0;if(!d)ng(c[f+10488>>2]|0,b,e);else v8(d,b,e)|0}l=g;return}function _i(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[244]|0;i=c[h+6140>>2]|0;if(!f){if(!e)e=d+(c8(d)|0)|0}else e=Yi(d,e)|0;if((e-d|0)>0?(f=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(f,i,j,b,Rf(0,1.0)|0,d,e,0.0,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function $i(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[244]|0;h=c[f+6140>>2]|0;if(!e)e=Yi(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+264|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10492|0;b=c[f>>2]|0;h=c[h+268>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=58608;c[m+8>>2]=f;c[m+12>>2]=i;Zi(11395,m);break}else{c[n>>2]=f;c[n+4>>2]=d;Zi(11404,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function aj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[244]|0;i=c[h+6140>>2]|0;if(!e)e=d+(c8(d)|0)|0;if((e-d|0)>0?(k=c[i+596>>2]|0,i=c[h+5928>>2]|0,j=+g[h+5932>>2],Zv(k,i,j,b,Rf(0,1.0)|0,d,e,f,0),a[h+10480>>0]|0):0)$i(b,d,e);return}function bj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=Yi(e,f)|0;if((s|0)!=(e|0)){t=c[244]|0;u=c[t+6140>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){cj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+vg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+vg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){Of(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+596>>2]|0;w=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(d,w,o,v,Rf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+596>>2]|0;x=c[t+5928>>2]|0;o=+g[t+5932>>2];Zv(w,x,o,v,Rf(0,1.0)|0,e,s,0.0,0)}if(a[t+10480>>0]|0)$i(v,e,s)}l=y;return}function cj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[244]|0;if(e)d=Yi(b,d)|0;e=c[i+5928>>2]|0;h=+g[i+5932>>2];if((d|0)==(b|0))df(a,0.0,h);else{lz(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function dj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[244]|0;i=(c[p+6140>>2]|0)+596|0;Qv(c[i>>2]|0,a,b,d,f,15);h=+g[p+5156>>2];if(h>0.0&e){p=c[i>>2]|0;df(k,1.0,1.0);tf(j,a,k);df(n,1.0,1.0);tf(m,b,n);Pv(p,j,m,Rf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Pv(p,a,b,Rf(5,1.0)|0,f,15,h)}l=o;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[244]|0;k=+g[j+5156>>2];if(k>0.0){j=(c[j+6140>>2]|0)+596|0;n=c[j>>2]|0;df(f,1.0,1.0);tf(e,a,f);df(i,1.0,1.0);tf(h,b,i);Pv(n,e,h,Rf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Pv(j,a,b,Rf(5,1.0)|0,d,15,k)}l=m;return}function fj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[244]|0;f=c[s+6140>>2]|0;r=+g[s+5932>>2];e=r*.4000000059604645*d;r=r*.5;df(i,r,r*d);tf(h,a,i);bf(i);bf(j);bf(k);switch(b|0){case -1:case 4:{Cb(16777,4833,3285,6115);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;df(n,0.0,1.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.8659999966621399,-.5);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,.8659999966621399,-.5);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;df(n,1.0,0.0);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;df(n,-.5,.8659999966621399);gf(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;df(n,-.5,-.8659999966621399);gf(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+596>>2]|0;tf(m,h,i);tf(n,h,j);tf(o,h,k);Vv(s,m,n,o,Rf(0,1.0)|0);l=q;return}function gj(a){a=a|0;var b=0.0,d=0,e=0;e=c[244]|0;d=c[(c[e+6140>>2]|0)+596>>2]|0;b=+g[e+5932>>2]*.20000000298023224;Xv(d,a,b,Rf(0,1.0)|0,8);return}function hj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[244]|0)+6140>>2]|0;f=+vg(d/5.0,1.0);j=d-f*.5;d=f*.25;df(h,d,d);Zh(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+596|0;i=c[a>>2]|0;df(h,k-d,j-d);ij(i,h);i=c[a>>2]|0;df(h,k,j);ij(i,h);i=c[a>>2]|0;d=d*2.0;df(h,d+k,j-d);ij(i,h);jj(c[a>>2]|0,b,0,f);l=e;return}function ij(a,b){a=a|0;b=b|0;Ns(a+84|0,b);return}function jj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;Av(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Qs(a);return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function lj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function mj(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>c)g[d>>2]=c;return}function nj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function oj(){return (c[(c[244]|0)+6148>>2]|0)!=0|0}function pj(){return (c[(c[244]|0)+6144>>2]|0)!=0|0}function qj(a){a=a|0;if(a>>>0<19)return c[(c[244]|0)+40+(a<<2)>>2]|0;else Cb(6130,4833,3433,33800);return 0}function rj(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[244]|0)+229+b>>0]|0)!=0;break}else Cb(6175,4833,3441,33812);else d=0;while(0);return d|0}function sj(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function tj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[244]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+996+(a<<2)>>2];e=sj(h,h-+g[f+12>>2],b,d)|0;break}else Cb(6281,4833,3459,33849);else e=0;while(0);return e|0}function uj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[244]|0;if((a|0)>=0){if((a|0)>=512)Cb(6365,4833,3468,33822);h=+g[f+996+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+116>>2];if(h>e)d=(tj(a,e,+g[f+120>>2])|0)>0;else d=0}}else d=0;return d|0}function vj(b){b=b|0;var d=0;d=c[244]|0;do if((b|0)<0)b=0;else{if((b|0)>=512)Cb(6365,4833,3481,33835);if(+g[d+3044+(b<<2)>>2]>=0.0?(a[d+229+b>>0]|0)==0:0){b=1;break}b=0}while(0);return b|0}function wj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+212+b>>0]|0)!=0|0;else Cb(6459,4833,3490,33869);return 0}function xj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Cb(6459,4833,3497,33881);e=c[244]|0;d=+g[e+896+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+116>>2],d>f):0)?(h=+g[e+120>>2],d=d-f,f=h*.5,b=+i9(d,h)>f,b^+i9(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function yj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+886+b>>0]|0)!=0|0;else Cb(6459,4833,3515,33917);return 0}function zj(b){b=b|0;if(b>>>0<5)return (a[(c[244]|0)+881+b>>0]|0)!=0|0;else Cb(6459,4833,3522,33896);return 0}function Aj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Cb(6459,4833,3529,33933);e=c[244]|0;if(!(a[e+212+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+36>>2];b=+g[e+976+(b<<2)>>2]>=d*d}return b|0}function Bj(a){a=a|0;var b=0,d=0;d=(c[244]|0)+204|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Cj(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6256>>2]|0;if((d|0)>0)b=(Dj(b+6244|0,d+-1|0)|0)+16|0;else b=b+204|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Cb(12740,37262,1030,12749);return 0}function Ej(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[244]|0;if(d>>>0>=5)Cb(6459,4833,3563,34030);if(e<0.0)e=+g[f+36>>2];if((a[f+212+d>>0]|0)!=0?+g[f+976+(d<<2)>>2]>=e*e:0)rf(b,f+204|0,f+816+(d<<3)|0);else df(b,0.0,0.0);return}function Fj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[244]|0;d=e+204|0;b=c[d+4>>2]|0;a=e+816+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Cb(6459,4833,3575,34048)}function Gj(){return c[(c[244]|0)+6528>>2]|0}function Hj(a){a=a|0;c[(c[244]|0)+6528>>2]=a;return}function Ij(a){a=a|0;c[(c[244]|0)+10992>>2]=a&1;return}function Jj(a){a=a|0;c[(c[244]|0)+10988>>2]=a&1;return}function Kj(){var a=0,b=0;a=c[244]|0;b=c[a+6172>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6140>>2]|0)+272>>2]|0);return a|0}function Lj(a){a=a|0;if(xj(a,0)|0)a=ih(0)|0;else a=0;return a|0}function Mj(){var a=0;a=c[244]|0;if(!(c[a+6156>>2]|0))a=(c[a+6164>>2]|0)!=0;else a=1;return a|0}function Nj(){return (c[(c[244]|0)+6172>>2]|0)!=0|0}function Oj(){var a=0;a=Cg()|0;return lh(a+432|0,a+276|0)|0}function Pj(){var b=0,d=0;b=c[244]|0;d=c[(c[b+6140>>2]|0)+272>>2]|0;if((c[b+6156>>2]|0)==(d|0))a[b+6160>>0]=1;if((c[b+6172>>2]|0)==(d|0))a[b+6186>>0]=1;return}function Qj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+276|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rj(a){a=a|0;var b=0,d=0;d=(Cg()|0)+284|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Sj(a){a=a|0;eh(a,(Cg()|0)+276|0);return}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+24|0;h=f+8|0;i=f;k=(Cg()|0)+276|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];Uj(h,e);k=b;j=c[k+4>>2]|0;b=i;c[b>>2]=c[k>>2];c[b+4>>2]=j;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Vj(a,h,g,d);l=f;return}function Uj(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function Vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;if(!(!e?nj(b,d)|0:0))h=3;do if((h|0)==3){f=+g[d>>2];i=b+8|0;if(!(f>+g[i>>2])){if(f<+g[b>>2]){e=b;h=6}}else{e=i;h=6}if((h|0)==6)c[d>>2]=c[e>>2];e=d+4|0;f=+g[e>>2];if(f>+g[b+12>>2])b=i;else if(!(f<+g[b+4>>2]))break;c[e>>2]=c[b+4>>2]}while(0);h=d;i=c[h+4>>2]|0;d=a;c[d>>2]=c[h>>2];c[d+4>>2]=i;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[244]|0)+10420|0;c[j>>2]=c[f>>2];Ef(e,16,6539,j)|0;if((d?(g=Xj(e)|0,g|0):0)?a[g+140>>0]|0:0){c[g+184>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;Ef(e,16,6539,h)|0}hi(e,0,b|33554759)|0;l=i;return}function Xj(a){a=a|0;var b=0;b=c[244]|0;return cg(b+6124|0,Gf(a,0,0)|0)|0}function Yj(a,b){a=a|0;b=b|0;Wj(0,1);Zj(a,b);_j();return}function Zj(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Ii()|0)+144>>0]|0)){e=c[244]|0;f=e+11e3|0;on(f,(Ff(f,3073,b,d)|0)+(e+11e3)|0)}return}function _j(){if(!(c[(Cg()|0)+8>>2]&33554432))Cb(6554,4833,3717,32749);else{Ni();return}}function $j(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Yj(a,e);l=d;return}function ak(){Wj(0,0);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;f=i;d=c[244]|0;g=c[d+6140>>2]|0;h=c[d+6256>>2]|0;ck(f,a,g,Kg(g,6611,0)|0,d+204|0);d=d+6244|0;e=h+1|0;do if((c[d>>2]|0)>(h|0)){if(!b?(c[(Dj(d,h)|0)>>2]|0)==(a|0):0)break;ei(d,e);e=Dj(d,h)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];if((c[(Dj(d,h)|0)>>2]|0)==(a|0))Qh(g)}else dk(d,f);while(0);l=i;return}function ck(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=a+16|0;bf(g);c[a>>2]=b;c[a+4>>2]=0;c[a+8>>2]=d;c[a+12>>2]=e;d=f;e=c[d+4>>2]|0;f=g;c[f>>2]=c[d>>2];c[f+4>>2]=e;return}function dk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hu(a,iu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function ek(a){a=a|0;bk(Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0,0);return}function fk(a){a=a|0;if(gk(a)|0)hk((c[(c[244]|0)+6244>>2]|0)+-1|0);return}function gk(a){a=a|0;var b=0,d=0;d=c[244]|0;b=d+6244|0;d=c[d+6256>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Dj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function hk(a){a=a|0;var b=0;b=(c[244]|0)+6244|0;if((a|0)>0)Qh(c[(Dj(b,a+-1|0)|0)+4>>2]|0);else Qh(c[(Dj(b,0)|0)+8>>2]|0);ei(b,a);return}function ik(){var a=0,b=0,d=0,e=0,f=0;b=c[244]|0;d=b+6256|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6244|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Dj(d,a)|0)>>2]|0,(d|0)==(c[(Dj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Dj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Dj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);hk(a)}return}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[244]|0;if(gk(a)|0){if(!(b&268435456)){c[g>>2]=a;Ef(d,20,6631,g)|0}else{c[f>>2]=c[e+6256>>2];Ef(d,20,6619,f)|0}a=hi(d,0,b|67108864)|0;if(!a)lk()}else{kk();a=0}l=h;return a|0}function kk(){var b=0,d=0;d=c[244]|0;b=d+6304|0;a[d+6345>>0]=0;a[d+6344>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function lk(){var a=0;a=c[244]|0;if(!(c[(c[a+6140>>2]|0)+8>>2]&67108864))Cb(6644,4833,3907,32969);if((c[a+6256>>2]|0)>0){Ni();return}else Cb(6692,4833,3908,32969)}function mk(a){a=a|0;var b=0;b=c[244]|0;if((c[b+6244>>2]|0)>(c[b+6256>>2]|0))a=jk(Kg(c[b+6140>>2]|0,a,0)|0,321)|0;else{kk();a=0}return a|0}function nk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+6244|0;e=c[b+6256>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Dj(d,e)|0)>>2]|0;a=(e|0)==(Kg(c[b+6140>>2]|0,a,0)|0)}else a=0;return a|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;f=k+8|0;g=k;h=c[244]|0;i=c[h+6140>>2]|0;j=Kg(i,b,0)|0;do if(gk(j)|0){if(!(c[h+6304>>2]&c[i+188>>2])){gf(f,h+4|0,.5);df(g,.5,.5);pk(f,8,g)}if(!(hi(b,d,e|201326880)|0)){lk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){lk();fk(j);b=0}else b=1}else{kk();b=0}while(0);l=k;return b|0}function pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;g=a;a=c[g+4>>2]|0;f=e+6268|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6276|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6304>>2]=b|0?b:1;return}function qk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[244]|0)+6140>>2]|0;do if(xj(b,0)|0?ih(4)|0:0){if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3918,32853);else{bk(a,1);e=1;break}}else e=0;while(0);return e|0}function rk(a,b){a=a|0;b=b|0;var d=0;d=c[(c[244]|0)+6140>>2]|0;if(!a)a=c[d+272>>2]|0;else a=Kg(d,a,0)|0;if(!a)Cb(6721,4833,3932,32901);if(xj(b,0)|0?ih(4)|0:0)bk(a,1);return jk(a,321)|0}function sk(a,b,d){a=a|0;b=b|0;d=d|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6729:a,0)|0;do if(xj(b,0)|0?tk(4)|0:0){if(!d?Mj()|0:0)break;bk(a,1)}while(0);return jk(a,321)|0}function tk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&32|0)Cb(7637,4833,5505,33476);e=c[244]|0;switch(b&3){case 3:{if((c[e+6152>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 2:{if((c[e+6148>>2]|0)==(c[(c[e+6140>>2]|0)+604>>2]|0))g=9;else b=0;break}case 1:{d=c[e+6148>>2]|0;if((d|0)!=0?Uh(d,c[e+6140>>2]|0)|0:0)g=9;else b=0;break}default:if((c[e+6148>>2]|0)==(c[e+6140>>2]|0))g=9;else b=0}do if((g|0)==9)if(jh(c[e+6152>>2]|0,b)|0){if((((b&16|0)==0?(f=c[e+6172>>2]|0,f|0):0)?(a[e+6186>>0]|0)==0:0)?(f|0)!=(c[(c[e+6148>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function uk(a,b){a=a|0;b=b|0;a=Kg(c[(c[244]|0)+6140>>2]|0,(a|0)==0?6744:a,0)|0;if(!(oj()|0)?xj(b,0)|0:0)bk(a,1);return jk(a,321)|0}function vk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(a,Kg(Ii()|0,a,0)|0,b,c,d)|0}function wk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+304|0;r=s+16|0;q=s;h=s+32|0;o=s+24|0;p=s+40|0;i=c[244]|0;m=Ii()|0;n=c[m+8>>2]&4;Ol(h);ff(o,d);j=+g[o>>2];d=o+4|0;k=+g[d>>2];if(j<=0.0)g[o>>2]=+vg(j+ +g[h>>2],4.0);if(k<=0.0)g[d>>2]=+vg(k+ +g[h+4>>2],4.0);h=i+5132|0;i=c[h>>2]|0;if(!e)g[h>>2]=0.0;d=c[m>>2]|0;if(!a){c[r>>2]=d;c[r+4>>2]=b;Ef(p,256,11493,r)|0}else{c[q>>2]=d;c[q+4>>2]=a;c[q+8>>2]=b;Ef(p,256,11482,q)|0}gi(o,0);r=hi(p,0,n|f|16777475)|0;c[(Ii()|0)+176>>2]=(k==0.0?2:0)|j==0.0;c[h>>2]=i;l=s;return r|0}function xk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wk(0,a,b,c,d)|0}function yk(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;b=f+24|0;d=f+8|0;e=f;a=Ii()|0;if(!(c[a+8>>2]&16777216))Cb(6757,4833,4011,30366);if((c[a+156>>2]|0)>1)Ni();else{zk(b);a=c[a+176>>2]|0;if(a&1|0)g[b>>2]=+vg(4.0,+g[b>>2]);if(a&2|0){a=b+4|0;g[a>>2]=+vg(4.0,+g[a>>2])}Ni();a=(Ii()|0)+216|0;tf(e,a,b);lj(d,a,e);bh(b,0.0);fh(d,0)|0}l=f;return}function zk(a){a=a|0;var b=0,d=0;d=(Cg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[244]|0;Bk(3,e+5352|0);Ck(5,+g[e+5152>>2]);Ck(6,+g[e+5156>>2]);Dk(1,e+5144|0);return xk(a,b,1,d|65540)|0}function Bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[244]|0;em(e);c[e>>2]=a;a=f+5240+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];fm(f+6208|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=im(a)|0;if((c[e>>2]|0)==1){h=c[244]|0;e=jm(e,h+5092|0)|0;lm(d,a,+g[e>>2]);km(h+6220|0,d);g[e>>2]=b;l=f;return}else Cb(16777,4833,5405,31106)}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=im(a)|0;if((c[f>>2]|0)==2){j=c[244]|0;i=jm(f,j+5092|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];mm(d,a,g);km(j+6220|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Cb(16777,4833,5419,31106)}function Ek(){yk();Fk(3);Gk(1);return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[244]|0;a:do if((a|0)>0){h=b+6220|0;e=b+5092|0;while(1){b=nm(h)|0;d=im(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=b;break}case 2:{df(f,+g[b+4>>2],+g[b+8>>2]);d=jm(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(jm(d,e)|0)>>2]=j;break}default:{}}om(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[244]|0;if((a|0)>0){d=b+6208|0;while(1){e=gm(d)|0;f=e+4|0;e=b+5240+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];hm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Hk(){df(57824,1.0,1.0);df(57832,-1.0,-1.0);c[14460]=0;c[14461]=3;df(57848,0.0,1.0);df(57856,1.0,-1.0);c[14466]=3;c[14467]=6;df(57872,0.0,0.0);df(57880,1.0,1.0);c[14472]=6;c[14473]=9;df(57896,1.0,0.0);df(57904,-1.0,1.0);c[14478]=9;c[14479]=12;return}function Ik(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;m=l;l=l+16|0;h=m;k=m+8|0;i=c[244]|0;f=Bf(636)|0;a[h>>0]=a[m+12>>0]|0;f=Lg(636,h,f)|0;Dg(f,i,b);c[k>>2]=f;c[f+8>>2]=e;ig(i+6124|0,c[f+4>>2]|0,f);if(!(e&256)){df(h,60.0,60.0);b=h;o=c[b>>2]|0;b=c[b+4>>2]|0;n=(c[k>>2]|0)+12|0;c[n>>2]=o;c[n+4>>2]=b;p=+(~~(c[j>>2]=o,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=b,+g[j>>2])|0));b=c[k>>2]|0;o=h;n=c[o+4>>2]|0;f=b+20|0;c[f>>2]=c[o>>2];c[f+4>>2]=n;b=Ei(c[b+4>>2]|0)|0;f=c[k>>2]|0;if(b){Jk(f,4,0);f=b+8|0;n=c[f>>2]|0;f=c[f+4>>2]|0;o=(c[k>>2]|0)+12|0;c[o>>2]=n;c[o+4>>2]=f;p=+(~~(c[j>>2]=n,+g[j>>2])|0);df(h,p,+(~~(c[j>>2]=f,+g[j>>2])|0));f=c[k>>2]|0;n=c[h+4>>2]|0;o=f+20|0;c[o>>2]=c[h>>2];c[o+4>>2]=n;a[f+143>>0]=a[b+24>>0]|0;b=b+16|0;if(+xf(b)>9.999999747378752e-06){h=b;n=c[h+4>>2]|0;o=d;c[o>>2]=c[h>>2];c[o+4>>2]=n}}}n=d;d=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=d;c[o+4>>2]=n;o=f+36|0;c[o>>2]=d;c[o+4>>2]=n;o=f+28|0;c[o>>2]=d;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+164>>2]=2;if(+g[f+32>>2]<=0.0)c[f+168>>2]=2;if((c[f+164>>2]|0)>0)b=1;else b=(c[f+168>>2]|0)>0&1}else{c[f+168>>2]=2;c[f+164>>2]=2;b=0}a[f+172>>0]=b;b=i+6088|0;if(!(e&8192))Mk(b,k);else Ss(b,Hl(b)|0,k)|0;l=m;return c[k>>2]|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+188|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+192|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+196|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function Kk(a){a=a|0;return (c[a>>2]|0)==0|0}function Lk(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Nk(a){a=a|0;var b=0,d=0.0;b=c[244]|0;c[b+6140>>2]=a;if(a|0){d=+_h(a);g[b+5952>>2]=d;g[b+5932>>2]=d}return}function Ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=a+380|0;f=c[a+420>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Cb(11538,4833,4058,11607);if((c[a+384>>2]|0)!=(c[a+368>>2]|0))Cb(11623,4833,4059,11607);if((c[a+388>>2]|0)!=(c[d+6256>>2]|0))Cb(11679,4833,4060,11607);if((c[a+392>>2]|0)!=(c[d+6208>>2]|0))Cb(11755,4833,4061,11607);if((c[a+396>>2]|0)!=(c[d+6220>>2]|0))Cb(11820,4833,4062,11607);if((c[a+400>>2]|0)!=(c[d+6232>>2]|0))Cb(11881,4833,4063,11607)}else{c[e>>2]=f;c[a+384>>2]=c[a+368>>2];c[a+388>>2]=c[d+6256>>2];c[a+392>>2]=c[d+6208>>2];c[a+396>>2]=c[d+6220>>2];c[a+400>>2]=c[d+6232>>2]}return}function Pk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0;k=l;l=l+16|0;h=k+8|0;i=k;e=a+188|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;df(h,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=h;n=c[f+4>>2]|0;d=a+200|0;c[d>>2]=c[f>>2];c[d+4>>2]=n;d=a+20|0;n=d;f=c[n+4>>2]|0;e=h;c[e>>2]=c[n>>2];c[e+4>>2]=f;e=b;f=c[e>>2]|0;e=c[e+4>>2]|0;b=a+12|0;c[b>>2]=f;c[b+4>>2]=e;m=+(~~(c[j>>2]=f,+g[j>>2])|0);df(i,m,+(~~(c[j>>2]=e,+g[j>>2])|0));e=i;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;rf(i,d,h);Zh(a+216|0,i);rf(i,d,h);Zh(a+240|0,i)}l=k;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+192|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+164|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+172>>0]=0}f=+g[d+4>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+172>>0]=0;break}}while(0);return}function Rk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}else b=0.0;return +b}function Sk(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+_h(a);b=b+ +g[(c[244]|0)+5148>>2]*2.0}return +b}function Tk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+196|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+143>>0]=d&1}return}function Uk(){Qh(c[(c[244]|0)+6140>>2]|0);return}function Vk(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fu(a,gu(a,b)|0);c[a>>2]=b;return}function Wk(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;d=b+152|0;e=b+160|0;if(+g[d>>2]!=+g[e>>2]?+g[b+156>>2]!=+g[b+164>>2]:0)lj(a,d,e);else al(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function Xk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];df(d,h,f+ +Rk(b));lj(a,e,d);l=c;return}function Yk(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;bf(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+240>>2]-+g[b+20>>2]+ +g[b+104>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+24>>2]+ +g[b+108>>2];g[d+4>>2]=+(~~c|0);tf(a,d,b+84|0);l=e;return}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[244]|0;m=c[b+8>>2]|0;bf(a);if(!(m&33554432)){o=k+5112|0;rf(f,k+4|0,k+5224|0);$k(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Us(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];_k(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5192>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5192>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function _k(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+32|0;n=p;o=c[244]|0;if(a[o+6344>>0]|0){h=+g[o+6320>>2];k=+g[o+6324>>2];i=+g[o+6328>>2];m=+g[o+6332>>2];if(!(h>=0.0)|!(i>=0.0)){f=e;h=+g[d+36>>2]}else{f=e;h=+Wh(+g[e>>2],h,i)}g[f>>2]=h;if(!(k>=0.0)|!(m>=0.0)){f=e+4|0;h=+g[d+40>>2]}else{q=e+4|0;f=q;h=+Wh(+g[q>>2],k,m)}g[f>>2]=h;f=o+6336|0;if(c[f>>2]|0){Vs(n);c[n>>2]=c[o+6340>>2];r=d+20|0;t=c[r+4>>2]|0;s=n+4|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;s=d+36|0;t=c[s+4>>2]|0;r=n+12|0;c[r>>2]=c[s>>2];c[r+4>>2]=t;r=n+20|0;t=e;s=c[t+4>>2]|0;q=r;c[q>>2]=c[t>>2];c[q+4>>2]=s;je[c[f>>2]&127](n);f=c[r+4>>2]|0;q=e;c[q>>2]=c[r>>2];c[q+4>>2]=f}}if(!(c[d+8>>2]&16777280)){$k(n,e,o+5112|0);r=n;t=c[r+4>>2]|0;s=e;c[s>>2]=c[r>>2];c[s+4>>2]=t;k=(c[j>>2]=t,+g[j>>2]);m=+Rk(d);m=m+ +Sk(d);g[e+4>>2]=+vg(k,m+ +vg(0.0,+g[o+5104>>2]+-1.0))}r=e;s=c[r+4>>2]|0;t=b;c[t>>2]=c[r>>2];c[t+4>>2]=s;l=p;return}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+vg(+g[b>>2],+g[c>>2]);df(a,d,+vg(+g[b+4>>2],+g[c+4>>2]));return}function al(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;df(a,b,c);df(a+8|0,d,e);return}function bl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[244]|0;i=+g[n+5224>>2];j=+g[n+5228>>2];Wk(u);B=+g[d>>2];n=B-+Dl(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+$h(u)>j*2.0;df(p,n?-i:0.0,t?-j:0.0);El(u,p);t=u+8|0;rf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Us(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1120+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){bf(a);switch(o|0){case 3:{df(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{df(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{df(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{df(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}tf(q,a,d);lj(p,a,q);if(rr(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1136+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+yf(+g[b>>2]+i,+g[t>>2])-i;i=+vg(i,+g[u>>2]);B=+yf(B+j,+g[u+12>>2])-j;B=+vg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}bf(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function cl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+yf(+g[b>>2],+g[c>>2]);df(a,d,+yf(+g[b+4>>2],+g[c+4>>2]));return}function dl(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+104|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+124>>2];e=+g[d+112>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+120>>2]*(+g[d+36>>2]-+g[d+132>>2]);e=+g[d+116>>2];if(e<3402823466385288598117041.0e14){p=+Rk(d);e=e-(1.0-f)*(p+ +Sk(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+136>>2])}df(i,0.0,0.0);$k(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+143>>0]|0)==0?(a[d+144>>0]|0)==0:0){g[b>>2]=+yf(e,+en(d));g[b+4>>2]=+yf(f,+gn(d))}l=k;return}function el(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Kg(e,a,0)|0;Jg(e+420|0,d);l=b;return}function fl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function gl(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Wf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Wf(c,b);return}function hl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;r=c[244]|0;o=Ii()|0;if(!(h&256)){q=(h&30|0)==0?h|2:h;j=r+6148|0;k=c[j>>2]|0;m=(q&32|0)!=0;if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=o;h=kh(b,d)|0;if((((q&4096|0)!=0?(a[r+6896>>0]|0)!=0:0)?(c[r+6900>>2]&4|0)==0:0)?ih(16)|0:0){ah(d);t=+g[r+6168>>2]+9.999999747378752e-05;if(!(sj(t,t-+g[r+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{Qh(o);i=1;h=1}}else{i=h;h=0}if(m?(c[r+6152>>2]|0)==(o|0):0)c[j>>2]=k;if((q&64|0)==0|i^1)if(i)p=23;else j=0;else{m=c[r+6164>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))p=23;else j=0}do if((p|0)==23){if(q&1024|0){if(a[r+225>>0]|0){j=1;break}if(a[r+226>>0]|0){j=1;break}if(a[r+227>>0]|0){j=1;break}}if(q&2|0?a[r+876>>0]|0:0){_g(d,o);Qh(o);rf(n,r+204|0,b);j=n;k=c[j+4>>2]|0;m=r+6188|0;c[m>>2]=c[j>>2];c[m+4>>2]=k}if((q&4|0)!=0?(a[r+876>>0]|0)!=0:0)p=34;else if((q&16|0)!=0?(a[r+881>>0]|0)!=0:0)p=34;if((p|0)==34){if(!(q&2048)){_g(d,o);rf(n,r+204|0,b);b=n;n=c[b+4>>2]|0;p=r+6188|0;c[p>>2]=c[b>>2];c[p+4>>2]=n}else $g();Qh(o);h=1}if((q&8|0)!=0?(a[r+886>>0]|0)!=0:0){if(!((q&1|0)!=0?+g[r+916>>2]>=+g[r+116>>2]:0))h=1;$g()}if(((q&1|0)!=0?(c[r+6172>>2]|0)==(d|0):0)?+g[r+896>>2]>0.0:0){j=1;h=h|(xj(0,1)|0)}else j=1}while(0);if((c[r+6172>>2]|0)==(d|0))if(!(a[r+212>>0]|0)){do if(!((q&2|0)==0|j^1)){if(q&1|0?+g[r+916>>2]>=+g[r+116>>2]:0)break;h=h|(a[r+6896>>0]|0)==0}while(0);$g();i=0}else i=1;else i=0;if(e|0)a[e>>0]=j&1;if(f)a[f>>0]=i}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[r+6172>>2]|0)==(d|0)){$g();h=0}else h=0}l=s;return h|0}function il(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;fl(n,b,q,d);tf(o,q,a+28|0);fl(r,o,b,d);rf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_k(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function jl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;nl(f,b);if(e==0.0){df(h,1.0,1.0);Ws(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];al(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];al(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];al(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];al(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Cb(16777,4833,4333,11934)}l=i;return}function kl(){go((Cg()|0)+420|0);return}function ll(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +Rk(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];al(a,e,c,d,c+ +Sk(b));return}function nl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];al(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function ol(a,b){a=a|0;b=b|0;df(a,+g[b>>2],+g[b+12>>2]);return}function pl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function ql(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[244]|0;h=c[C+6140>>2]|0;x=(b|0)==1;p=Kg(h,x?7043:7052,0)|0;b=(a[(x?h+129|0:h+128|0)>>0]|0)!=0;if(b)f=+g[C+5192>>2];else f=0.0;nl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];al(z,d+ +g[h+20>>2],q-+g[C+5192>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];al(z,q-+g[C+5192>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+Rk(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+Sk(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Dl(z)<=0.0)?!(+$h(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+596|0;s=c[t>>2]|0;u=z+8|0;r=Rf(14,1.0)|0;Qv(s,z,u,r,+g[h+92>>2],b);q=-+Wh(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;df(v,q,-+Wh(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));El(z,v);if(x)o=+Dl(z);else o=+$h(z);n=x?h+104|0:h+108|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+vg(e,f);if(!(d>0.0))Cb(7061,4833,5063,7113);k=+g[n>>2];q=o*(f/+vg(d,1.0));q=+Wh(q,+g[C+5200>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6172>>2]|0;hl(z,p,w,v,0)|0;f=+vg(1.0,e-f);i=o-q;d=i*+Qf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10412|0:C+10416|0;k=+Qf((+g[(x?C+204|0:C+208|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);ah(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Qf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Qf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Rf(b,1.0)|0;Eg(A);if(x){m=+yl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+yf(q+m,+g[y+8>>2]);al(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+yl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];al(B,k,o,m,+yf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Qv(c[t>>2]|0,A,A+8|0,b,+g[C+5196>>2],15)}l=D;return}function rl(a,b){a=a|0;b=b|0;Gv(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Qs(a);return}function sl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))nu(a,ou(a,b)|0);c[a>>2]=b;return}function tl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))pu(a,qu(a,b)|0);c[a>>2]=b;return}function ul(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ru(a,su(a,b)|0);c[a>>2]=b;return}function vl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nu(a,ou(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function wl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;k=l;l=l+80|0;p=k+56|0;m=k+48|0;q=k+40|0;g=k+32|0;h=k+24|0;i=k+16|0;j=k+8|0;f=k;o=Ii()|0;df(q,e,e);rf(m,d,q);df(h,e,e);tf(g,d,h);lj(p,m,g);b=hl(p,b,m,q,0)|0;n=a[m>>0]|0;n=Rf((a[q>>0]|0)==0|n<<24>>24==0?(n<<24>>24?34:33):35,1.0)|0;Dn(g,p);d=o+596|0;o=c[d>>2]|0;Xv(o,g,+vg(2.0,e),n,12);e=e*.707099974155426+-1.0;if(a[m>>0]|0){q=c[d>>2]|0;df(i,e,e);tf(h,g,i);r=-e;df(f,r,r);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0);q=c[d>>2]|0;df(i,e,r);tf(h,g,i);df(f,r,e);tf(j,g,f);Ov(q,h,j,Rf(0,1.0)|0,1.0)}l=k;return b|0}function xl(a,b){a=a|0;b=b|0;df(a,+g[b+8>>2],+g[b+4>>2]);return}function yl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function zl(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[244]|0;B=Ii()|0;C=B+416|0;D=c[C>>2]|0;if(!D)Cb(9839,4833,11062,10018);mg();Li();s=B+596|0;vv(c[s>>2]|0);b=D+40|0;u=B+220|0;t=+vg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+240>>2]=+vg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+144>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+6528|0;k=D+44|0;m=x+1.0;n=B+436|0;o=B+444|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Hm(i);d=(c[D>>2]|0)+i|0;df(r,h+-4.0,x);df(v,h+4.0,t);lj(q,r,v);Wg(d);if(gh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){hl(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(Xq(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Rf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;df(w,h,+vg(m,+g[n>>2]));df(y,h,+yf(t,+g[o>>2]));Ov(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(Xq(d,b)|0)>>2]|0;c[(Xq(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;Zq(f,+gr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+412>>2]=0.0;g[B+216>>2]=+(~~(+g[B+20>>2]+ +g[B+404>>2]+0.0)|0);l=E;return}function Al(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=c[244]|0;b=e+10480|0;if(a[b>>0]|0){Zi(7805,f);a[b>>0]=0;b=e+10484|0;d=c[b>>2]|0;if(d|0){if((d|0)==(c[931]|0))o9(d)|0;else k9(d)|0;c[b>>2]=0}b=e+10488|0;if((Kn(c[b>>2]|0)|0)>1){th(Ln(c[b>>2]|0)|0);Mn(c[b>>2]|0)}}l=f;return}function Bl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Cl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Dl(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function El(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Fl(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;d=f;c[d>>2]=a;e=(c[244]|0)+6088|0;a:do if((c[(Lk(e)|0)>>2]|0)!=(a|0)?(c[e>>2]|0)>0:0){b=0;while(1){if((c[(bi(e,b)|0)>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(c[e>>2]|0))break a}Gl(e,(Hl(e)|0)+(b<<2)|0)|0;Mk(e,d)}while(0);l=f;return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;_aa(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Cb(12705,37262,1064,12734);return 0}function Hl(a){a=a|0;return c[a+8>>2]|0}function Il(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pu(a,qu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Jl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Ii()|0;d=c[244]|0;if(b<=0.0)b=+Kl();n=+g[d+5168>>2];f=a+-1|0;m=+(f|0);o=+vg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+vg(1.0,+(~~(b-(o+n)*m)|0));e=j+344|0;Il(e,h);if((a|0)>1){d=0;do{Il(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+324>>2]=c[(Ll(e)|0)>>2];l=k;return}function Kl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(Cg()|0)+324>>2];if(a<0.0){Ol(b);a=+vg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function Ll(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Ml(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Nl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ol(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=Cg()|0;qh(d);rf(c,e+216|0,e+20|0);rf(a,d,c);l=b;return}function Pl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[244]|0;if(!a){a=Lh()|0;c[b>>2]=a}Kh(a);Ql(d+6232|0,b);lv(c[(c[d+6140>>2]|0)+596>>2]|0,c[(c[b>>2]|0)+68>>2]|0);l=e;return}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){tu(a,uu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Rl(){var a=0;a=c[244]|0;nv(c[(c[a+6140>>2]|0)+596>>2]|0);a=a+6232|0;Sl(a);if(Tl(a)|0)a=Lh()|0;else a=c[(Ul(a)|0)>>2]|0;Kh(a);return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Tl(a){a=a|0;return (c[a>>2]|0)==0|0}function Ul(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function Vl(a,b){a=a|0;b=b|0;var d=0;d=Ii()|0;if(b){b=d+320|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+320|0;c[b>>2]=c[b>>2]&~a;a=b}vl(d+332|0,a);return}function Wl(){var a=0,b=0;b=Ii()|0;a=b+332|0;Xl(a);if(Yl(a)|0)a=1;else a=c[(Zl(a)|0)>>2]|0;c[b+320>>2]=a;return}function Xl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Yl(a){a=a|0;return (c[a>>2]|0)==0|0}function Zl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Cb(37253,37262,1040,13011);return 0}function _l(a){a=a|0;Vl(1,a);return}function $l(){Wl();return}function am(a){a=a|0;Vl(2,a);return}function bm(){Wl();return}function cm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Ii()|0;g[d+328>>2]=a;Il(d+356|0,c);l=b;return}function dm(){var a=0,b=0.0,c=0;c=Ii()|0;a=c+356|0;Ml(a);if(Nl(a)|0)b=-1.0;else b=+g[(Ll(a)|0)>>2];g[c+328>>2]=b;return}function em(a){a=a|0;cf(a+4|0);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){vu(a,wu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function gm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Cb(37253,37262,1040,13011);return 0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function im(a){a=a|0;if(a>>>0<17)return 1152+(a<<3)|0;else Cb(12007,4833,5390,12046);return 0}function jm(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function km(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){xu(a,yu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function lm(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function mm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function nm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Cb(37253,37262,1040,13011);return 0}function om(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function pm(a){a=a|0;var b=0;do switch(a|0){case 0:{b=31828;break}case 1:{b=31864;break}case 2:{b=7123;break}case 3:{b=7132;break}case 4:{b=7140;break}case 5:{b=7148;break}case 6:{b=7155;break}case 7:{b=7168;break}case 8:{b=7176;break}case 9:{b=7191;break}case 10:{b=7205;break}case 11:{b=7213;break}case 12:{b=7227;break}case 13:{b=7244;break}case 14:{b=7254;break}case 15:{b=7266;break}case 16:{b=7280;break}case 17:{b=7301;break}case 18:{b=7321;break}case 19:{b=7331;break}case 20:{b=7342;break}case 21:{b=31967;break}case 22:{b=7359;break}case 23:{b=7373;break}case 24:{b=7386;break}case 25:{b=7393;break}case 26:{b=7407;break}case 27:{b=31354;break}case 28:{b=7420;break}case 29:{b=7437;break}case 30:{b=7453;break}case 31:{b=7464;break}case 32:{b=7482;break}case 33:{b=7499;break}case 34:{b=7511;break}case 35:{b=7530;break}case 36:{b=32055;break}case 37:{b=7548;break}case 38:{b=32065;break}case 39:{b=7565;break}case 40:{b=7586;break}case 41:{b=7601;break}case 42:{b=7622;break}default:Cb(16777,4833,5486,33607)}while(0);return b|0}function qm(a){a=a|0;var b=0,d=0;b=c[244]|0;d=c[b+6140>>2]|0;if(!d)Cb(7690,4833,5538,33460);switch(a&3){case 3:{a=c[b+6144>>2]|0;if(!a)a=0;else a=(c[d+604>>2]|0)==(c[a+604>>2]|0);break}case 2:{a=(c[d+604>>2]|0)==(c[b+6144>>2]|0);break}case 1:{a=c[b+6144>>2]|0;if(!a)a=0;else a=Uh(a,d)|0;break}default:a=(d|0)==(c[b+6144>>2]|0)}return a|0}function rm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+28>>2])}function sm(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+32>>2])}function tm(a){a=a|0;var b=0,d=0;d=(c[(c[244]|0)+6140>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function um(a,b){a=a|0;b=b|0;Pk(Cg()|0,a,b);return}function vm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Pk(a,b,c);return}function wm(a,b){a=a|0;b=b|0;Qk(c[(c[244]|0)+6140>>2]|0,a,b);return}function xm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Qk(a,b,c);return}function ym(a,b){a=a|0;b=b|0;Tk(c[(c[244]|0)+6140>>2]|0,a,b);return}function zm(){return (a[(Cg()|0)+143>>0]|0)!=0|0}function Am(){return (a[(Cg()|0)+145>>0]|0)!=0|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;a=Xj(a)|0;if(a|0)Tk(a,b,c);return}function Cm(a){a=a|0;if(a){a=Xj(a)|0;if(a|0)Qh(a)}else Qh(0);return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g;h=c[244]|0;a[h+6344>>0]=1;lj(i,b,d);d=h+6320|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];c[h+6336>>2]=e;c[h+6340>>2]=f;l=g;return}function Em(a){a=a|0;var b=0,d=0,e=0;b=c[244]|0;e=a;d=c[e+4>>2]|0;a=b+6292|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6312>>2]=1;return}function Fm(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;a[e+6300>>0]=b&1;c[e+6316>>2]=d|0?d:1;return}function Gm(){a[(c[244]|0)+6345>>0]=1;return}function Hm(a){a=a|0;var b=0,d=0,e=0.0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10886,31745);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(Xq(b,a)|0)>>2];return +(+yl(+g[d+20>>2],+g[d+24>>2],e))}else Cb(9853,4833,10890,31745);return +(0.0)}function Im(){var a=0,b=0;b=l;l=l+16|0;a=b;Ol(a);l=b;return +(+g[a>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(Cg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a){a=a|0;var b=0,d=0;d=(Cg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Lm(){var a=0;a=Cg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function Mm(){return +(+g[(c[244]|0)+5932>>2])}function Nm(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5164>>2])}function Om(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5148>>2]*2.0)}function Pm(){var a=0;a=c[244]|0;return +(+g[a+5164>>2]+(+g[a+5932>>2]+ +g[a+5148>>2]*2.0))}function Qm(){return c[(Ii()|0)+596>>2]|0}function Rm(){return c[(c[244]|0)+5928>>2]|0}function Sm(){return +(+g[(c[244]|0)+5932>>2])}function Tm(a){a=a|0;var b=0,d=0;d=(c[244]|0)+5940|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Um(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;g[d+592>>2]=a;a=+_h(d);g[b+5952>>2]=a;g[b+5932>>2]=a;return}function Vm(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=Cg()|0;rf(d,c+216|0,c+20|0);tf(a,d,c+104|0);l=b;return}function Wm(){var a=0;a=Cg()|0;return +(+g[a+216>>2]-+g[a+20>>2]+ +g[a+104>>2])}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Ii()|0;rf(d,f+20|0,f+104|0);tf(e,d,a);d=f+216|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function Ym(a){a=+a;var b=0;b=Ii()|0;a=+g[b+20>>2]-+g[b+104>>2]+a;g[b+216>>2]=a;b=b+240|0;g[b>>2]=+vg(+g[b>>2],a);return}function Zm(a){a=+a;var b=0;b=Ii()|0;a=+g[b+24>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+vg(+g[b>>2],a);return}function _m(a){a=a|0;var b=0;b=Cg()|0;rf(a,b+232|0,b+20|0);return}function $m(a){a=a|0;var b=0,d=0;d=(Cg()|0)+216|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Ii()|0;d=f+216|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+240|0;$k(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function bn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+104>>2])}function cn(){return +(+g[(c[(c[244]|0)+6140>>2]|0)+108>>2])}function dn(){return +(+en(c[(c[244]|0)+6140>>2]|0))}function en(a){a=a|0;return +(+vg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+132>>2])))}function fn(){return +(+gn(c[(c[244]|0)+6140>>2]|0))}function gn(a){a=a|0;return +(+vg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+136>>2])))}function hn(a){a=+a;var b=0;b=Ii()|0;g[b+112>>2]=a;g[b+120>>2]=0.0;return}function jn(a){a=+a;var b=0;b=Ii()|0;a=+Rk(b)+a;g[b+116>>2]=a+ +Sk(b);g[b+124>>2]=0.0;return}function kn(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Ii()|0;if(!(b>=0.0&b<=1.0))Cb(7706,4833,5941,31010);a=+(~~(+g[f+108>>2]+a)|0);d=f+116|0;g[d>>2]=a;g[f+124>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[244]|0)+5164>>2]<=a):0)g[d>>2]=e;return}function ln(a){a=+a;var b=0;b=Ii()|0;kn(+g[b+228>>2]-+g[b+24>>2]+(+g[b+256>>2]*a+(a+-.5)*+g[(c[244]|0)+5164>>2]*2.0),a);return}function mn(){if(Am()|0)ln(.5);return}function nn(a){a=a|0;var b=0;if((a|0)>-2){b=Ii()|0;c[b+628>>2]=a+1+(c[b+612>>2]|0);c[b+632>>2]=2147483647;return}else Cb(7755,4833,5972,33285)}function on(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Ii()|0;if(!(a[k+144>>0]|0)){n=c[244]|0;if(!b)Cb(7768,4833,6062,31812);if(!d)t=b+(c8(b)|0)|0;else t=d;d=k+216|0;df(v,+g[d>>2],+g[k+220>>2]+ +g[k+252>>2]);e=+g[k+328>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;cj(w,b,t,0,e);tf(y,v,w);lj(x,v,y);bh(w,0.0);if(fh(x,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];aj(y,b,t,e);break}else break}else{p=+Mm();f=+g[k+436>>2];m=+g[k+444>>2];df(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10480>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=e8(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){df(r,3402823466385288598117041.0e14,p);tf(y,x,r);lj(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=e8(b,10)|0;if(gh(q,0,0)|0)break;cj(r,b,d,0,-1.0);g[w>>2]=+vg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];_i(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=e8(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}rf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}tf(x,v,w);lj(y,v,x);dh(y,0.0);fh(y,0)|0}while(0)}l=z;return}function pn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Zj(a,e);l=d;return} -function qn(a,b,c){a=a|0;b=b|0;c=c|0;Bk(0,a);Zj(b,c);Gk(1);return}function rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;qn(a,b,f);l=e;return}function sn(a,b){a=a|0;b=b|0;Bk(0,(c[244]|0)+5256|0);Zj(a,b);Gk(1);return}function tn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;sn(a,e);l=d;return}function un(a,b){a=a|0;b=b|0;if(+g[(c[(c[244]|0)+6140>>2]|0)+328>>2]<0.0){cm(0.0);Zj(a,b);dm()}else Zj(a,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;un(a,e);l=d;return}function wn(){var b=0,d=0.0,e=0,f=0;b=Ii()|0;if(!(a[b+144>>0]|0)){f=c[244]|0;e=b+248|0;d=+g[f+5148>>2];g[e>>2]=+vg(+g[e>>2],+g[f+5932>>2]+d*2.0);b=b+252|0;g[b>>2]=+vg(+g[b>>2],d)}return}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Ii()|0;if(!(a[f+144>>0]|0)){k=c[244]|0;m=+Kl();cj(n,b,0,1,-1.0);f=f+216|0;h=k+5148|0;df(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);tf(j,f,q);lj(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5168>>2];else i=0.0;df(s,m+i,+g[h>>2]*2.0);tf(r,f,s);tf(j,r,n);lj(q,f,j);dh(q,+g[h>>2]);if(fh(q,0)|0?(r=k+11e3|0,s=(Ff(r,3073,d,e)|0)+(k+11e3)|0,o=p+8|0,df(j,0.0,.5),bj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){df(t,+g[o>>2]+ +g[k+5168>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];_i(j,b,0,1)}}l=u;return}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;xn(a,b,f);l=e;return}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Ii()|0;if(!(a[o+144>>0]|0)){p=c[244]|0;q=Kg(o,b,0)|0;cj(r,b,0,1,-1.0);C=o+216|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5148|0;k=+g[i>>2];if(e&512|0?(h=+g[o+252>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5144|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);tf(z,s,t);lj(v,s,z);dh(v,+g[i>>2]);if(fh(v,q)|0){C=hl(v,q,w,x,(c[o+320>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Rf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5152>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];dj(y,z,x,1,k);tf(z,v,d);rf(y,B,d);bj(z,y,b,0,r,p+5208|0,v);d=C}else d=0}else d=0;l=A;return d|0}function An(a,b){a=a|0;b=b|0;return zn(a,b,0)|0}function Bn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[244]|0)+5148|0;e=c[d>>2]|0;g[d>>2]=0.0;df(f,0.0,0.0);a=zn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Cn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Ii()|0;if(!(a[i+144>>0]|0)){b=Kg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+216|0;tf(g,i,e);lj(j,i,g);dh(j,0.0);if(fh(j,b)|0)b=hl(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Dn(a,b){a=a|0;b=b|0;df(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function En(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Ii()|0;if(!(a[j+144>>0]|0)){m=j+216|0;tf(p,m,d);lj(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){df(p,2.0,2.0);Zh(o+8|0,p)}dh(o,0.0);do if(fh(o,0)|0){d=j+596|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Pv(j,o,k,Sf(i)|0,0.0,15,1.0);i=c[d>>2]|0;df(q,1.0,1.0);tf(p,o,q);df(n,1.0,1.0);rf(r,k,n);ew(i,b,p,r,e,f,Sf(h)|0);break}else{ew(j,b,o,k,e,f,Sf(h)|0);break}}while(0)}l=s;return}function Fn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;m=x+40|0;n=x+80|0;o=x+8|0;p=x;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;Gn(b);k=Kg(q,7779,0)|0;kl();if((h|0)>-1){y=+(h|0);df(s,y,y)}else{A=r+5144|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=q+216|0;tf(u,A,d);gf(w,s,2.0);tf(v,u,w);lj(t,A,v);tf(v,A,s);tf(m,A,s);tf(u,m,d);lj(w,v,u);dh(t,0.0);if(fh(t,k)|0){d=hl(t,k,m,n,0)|0;m=a[m>>0]|0;m=Rf(m<<24>>24==0|(a[n>>0]|0)==0?(m<<24>>24?22:21):23,1.0)|0;n=t;A=c[n+4>>2]|0;z=o;c[z>>2]=c[n>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=p;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+yf(+g[s>>2],+g[s+4>>2]);y=+Wh(y,0.0,+g[r+5152>>2]);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];dj(u,v,m,1,y);m=q+596|0;if(+g[i+12>>2]>0.0){h=c[m>>2]|0;k=w+8|0;Qv(h,w,k,Sf(i)|0,0.0,15);h=w}else{h=w;k=w+8|0}A=c[m>>2]|0;ew(A,b,h,k,e,f,Sf(j)|0)}else d=0}else d=0;l=x;return d|0}function Gn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function Hn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=c[931],c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function In(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=c[244]|0;f=e+10480|0;do if(!(a[f>>0]|0)){g=c[e+6140>>2]|0;if(!d){d=c[e+24>>2]|0;if(!d)break}d=Yf(d,7786)|0;c[e+10484>>2]=d;if(!d)Cb(7789,4833,6539,33017);a[f>>0]=1;c[e+10492>>2]=c[g+268>>2];if((b|0)>-1)c[e+10496>>2]=b}while(0);return}function Jn(b){b=b|0;var d=0,e=0,f=0;d=c[244]|0;e=d+10480|0;if((a[e>>0]|0)==0?(f=c[d+6140>>2]|0,a[e>>0]=1,c[d+10484>>2]=0,c[d+10492>>2]=c[f+268>>2],(b|0)>-1):0)c[d+10496>>2]=b;return}function Kn(a){a=a|0;return (c[a>>2]|0)+-1|0}function Ln(a){a=a|0;return Xs(a)|0}function Mn(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;zi(b);a[d>>0]=0;qs(b,d);l=c;return}function Nn(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[244]|0;el(33052);df(d,0.0,0.0);g=An(7807,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);b=An(7818,d)|0;ch(0.0,-1.0);df(d,0.0,0.0);d=An(7830,d)|0;ch(0.0,-1.0);kg(80.0);_l(0);e=a+10496|0;On(7847,e,0,9,0)|0;$l();mg();kl();if(g)Hn(c[e>>2]|0);if(b)In(c[e>>2]|0,c[a+24>>2]|0);if(d)Jn(c[e>>2]|0);l=f;return}function On(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=xo(a,i,+(d|0),+(e|0),f|0?f:7924,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[244]|0;i=c[h+6140>>2]|0;f=c[i+312>>2]|0;g=h+6348|0;e=c[g>>2]|0;if(!e)e=($f(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=$f(f,b,-1)|0;if((e|0)==-1){e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6346>>0]|0;hg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10480>>0]|0)!=0)return e|(c[i+268>>2]|0)<(c[h+10496>>2]|0)|0}else e=1;return e|0}function Qn(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.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.0,P=0.0;N=l;l=l+160|0;L=N+136|0;M=N+128|0;I=N+64|0;J=N+112|0;K=N+40|0;i=N+120|0;o=N+88|0;C=N+145|0;s=N+144|0;D=N;E=N+56|0;F=N+32|0;G=N+104|0;v=N+24|0;w=N+16|0;x=N+80|0;y=N+72|0;z=N+8|0;q=Ii()|0;if(!(a[q+144>>0]|0)){H=c[244]|0;A=(e&2|0)!=0;if((e&1024|0)==0&(A^1))df(I,+g[H+5144>>2],0.0);else{p=H+5144|0;t=c[p+4>>2]|0;u=I;c[u>>2]=c[p>>2];c[u+4>>2]=t}if(!h)u=Yi(f,0)|0;else u=h;cj(J,f,u,0,-1.0);m=+g[I+4>>2];B=+vg(m,+g[q+252>>2]);t=H+5932|0;r=+yf(+g[q+248>>2],+g[t>>2]+ +g[H+5148>>2]*2.0);m=+vg(r,m*2.0+ +g[J+4>>2]);r=+g[q+20>>2];qh(i);df(L,r+ +g[i>>2],m+ +g[q+220>>2]);lj(K,q+216|0,L);if(A){r=+(~~(+g[q+84>>2]*.5)|0)+-1.0;g[K>>2]=+g[K>>2]-r;p=K+8|0;g[p>>2]=+g[p>>2]+r}P=+g[t>>2];k=+g[I>>2];r=P+(A?3.0:2.0)*k;O=+g[J>>2];k=P+(O>0.0?O+k*2.0:0.0);df(L,k,m);bh(L,B);if(A){c[o>>2]=c[K>>2];c[o+4>>2]=c[K+4>>2];c[o+8>>2]=c[K+8>>2];c[o+12>>2]=c[K+12>>2]}else{P=+g[K>>2];al(o,P,+g[K+4>>2],k+P+ +g[H+5160>>2]*2.0,+g[K+12>>2])}h=Pn(b,e)|0;if(!(fh(o,b)|0)){if((e&8|0)==0&h){Rn(b);h=1}}else{i=e&4;n=(i|0)==0;j=(e&64|0)!=0;p=(e&256|0)==0;if(p&(hl(o,b,C,s,i<<4|(j?e>>>6&2|16:0)|5120)|0)){i=(e&192|0)==0;if(e&128){df(L,r+ +g[o>>2],+g[o+12>>2]);i=i|(hh(o,L,1)|0)}if(j)i=(d[H+881>>0]|i&1|0)!=0;j=h^1;if(i&((a[H+6896>>0]|0)==0|j)){hg(c[q+312>>2]|0,b,j&1);h=j}}if(!n)Pj();j=a[C>>0]|0;j=Rf((a[s>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;df(L,r,B);tf(D,K,L);do if(A){A=K;z=c[A+4>>2]|0;i=E;c[i>>2]=c[A>>2];c[i+4>>2]=z;i=K+8|0;z=i;A=c[z+4>>2]|0;C=F;c[C>>2]=c[z>>2];c[C+4>>2]=A;P=+g[H+5152>>2];c[M>>2]=c[E>>2];c[M+4>>2]=c[E+4>>2];c[L>>2]=c[F>>2];c[L+4>>2]=c[F+4>>2];dj(M,L,j,1,P);df(M,+g[I>>2],B);tf(G,K,M);c[L>>2]=c[G>>2];c[L+4>>2]=c[G+4>>2];fj(L,h?3:1,1.0);if(!(a[H+10480>>0]|0)){df(L,0.0,0.0);bj(D,i,f,u,J,L,0);break}else{$i(D,7853,7856);df(L,0.0,0.0);bj(D,i,f,u,J,L,0);$i(D,7858,7860);break}}else{if(!((e&1|0)==0&(a[C>>0]|0)==0)){J=K;G=c[J+4>>2]|0;F=v;c[F>>2]=c[J>>2];c[F+4>>2]=G;F=K+8|0;G=c[F+4>>2]|0;J=w;c[J>>2]=c[F>>2];c[J+4>>2]=G;c[M>>2]=c[v>>2];c[M+4>>2]=c[v+4>>2];c[L>>2]=c[w>>2];c[L+4>>2]=c[w+4>>2];dj(M,L,j,0,0.0)}if(!(e&512)){if(p){df(M,+g[I>>2],B+ +g[t>>2]*.15000000596046448);tf(y,K,M);c[L>>2]=c[y>>2];c[L+4>>2]=c[y+4>>2];fj(L,h?3:1,.699999988079071)}}else{df(M,r*.5,B+ +g[t>>2]*.5);tf(x,K,M);c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];gj(L)}if(a[H+10480>>0]|0)$i(D,7860,0);J=D;K=c[J+4>>2]|0;M=z;c[M>>2]=c[J>>2];c[M+4>>2]=K;c[L>>2]=c[z>>2];c[L+4>>2]=c[z+4>>2];_i(L,f,u,0)}while(0);if((e&8|0)==0&h)Rn(b)}}else h=0;l=N;return h|0}function Rn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Ii()|0;Up(0.0);e=a+268|0;c[e>>2]=(c[e>>2]|0)+1;Jg(a+420|0,d);l=b;return}function Sn(b,c){b=b|0;c=c|0;var d=0;d=Ii()|0;if(!(a[d+144>>0]|0))b=Qn(Kg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function Tn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+32|0;h=m+8|0;i=m;j=Ii()|0;do if(!(a[j+144>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Kg(j,b,0)|0;b=Qn(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[244]|0;n=+g[e+5932>>2]*.5;Un(h);k=Xg(j,f+1|0)|0;o=+yf(+g[j+284>>2],+g[j+440>>2]);df(i,o-+g[e+5144>>2]-n,n+(+g[j+280>>2]+ +g[e+5148>>2]));if(wl(k,i,n)|0)a[d>>0]=0;Vn(h)}}else b=0;while(0);l=m;return b|0}function Un(a){a=a|0;Eg(a+4|0);Ys(a);return}function Vn(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[d+272>>2]=c[b>>2];f=b+4|0;e=d+276|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[d+292>>0]=a[b+20>>0]|0;return}function Wn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Kg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function Xn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Ii()|0;if(!(a[g+144>>0]|0)){i=c[244]|0;h=i+11e3|0;f=(Ff(h,3073,e,f)|0)+(i+11e3)|0;b=Qn(Xg(g,b)|0,d,h,f)|0}else b=0;return b|0}function Yn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Wn(a,b,d,g)|0;l=f;return e|0}function Zn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Xn(a,b,d,g)|0;l=f;return e|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wn(a,0,b,f)|0;l=e;return d|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Xn(a,0,b,f)|0;l=e;return d|0}function ao(b){b=b|0;var c=0;c=Ii()|0;if(!(a[c+144>>0]|0))b=Qn(Kg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function bo(){var a=0,b=0.0;a=c[244]|0;b=+co();a=(c[a+6140>>2]|0)+216|0;g[a>>2]=b+ +g[a>>2];return}function co(){var a=0;a=c[244]|0;return +(+g[a+5932>>2]+ +g[a+5144>>2]*2.0)}function eo(b,d){b=b|0;d=d|0;var e=0;e=c[244]|0;if(!(a[(c[e+6140>>2]|0)+144>>0]|0)){a[e+6346>>0]=b&1;c[e+6348>>2]=d|0?d:1}return}function fo(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=Cg()|0;c[d>>2]=Xg(e,a)|0;Jg(e+420|0,d);l=b;return}function go(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function ho(a){a=a|0;return Kg(c[(c[244]|0)+6140>>2]|0,a,0)|0}function io(a){a=a|0;return Xg(c[(c[244]|0)+6140>>2]|0,a)|0}function jo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Ii()|0;if(!(a[k+144>>0]|0)){o=c[244]|0;f=o+5932|0;n=+g[f>>2];h=o+5144|0;i=+vg(+yf(+g[k+248>>2],n+ +g[o+5148>>2]*2.0),n);k=k+216|0;df(e,n,i);tf(b,k,e);lj(d,k,b);dh(d,0.0);if(fh(d,0)|0){df(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);tf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];gj(b);ch(0.0,+g[h>>2]*2.0)}else ch(0.0,+g[h>>2]*2.0)}l=m;return}function ko(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Ii()|0;if(!(a[f+144>>0]|0)){v=c[244]|0;o=v+11e3|0;d=(Ff(o,3073,b,d)|0)+(v+11e3)|0;cj(p,o,d,0,-1.0);h=+vg(0.0,+g[f+252>>2]);i=v+5932|0;j=+g[i>>2];k=v+5144|0;m=+vg(+yf(+g[f+248>>2],j+ +g[v+5148>>2]*2.0),j);b=f+216|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;df(r,j+e,+vg(m,+g[p+4>>2]));tf(n,b,r);lj(q,b,n);dh(q,0.0);if(fh(q,0)|0){df(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);tf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];gj(n);df(r,+g[i>>2]+ +g[k>>2]*2.0,h);tf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];_i(n,o,d,0)}}l=u;return}function lo(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;ko(a,e);l=d;return}function mo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[244]|0;n=Ii()|0;h=j+10364|0;_g(c[h>>2]|0,n);ah(0);oh(n);no(d,e,g,i);eh(m,a);a=oo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6172>>2]|0)==(f|0)){c[h>>2]=f;ah(f);break}else Cb(7862,4833,7139,7879);while(0);if(a)a=po(i,qo((c[244]|0)+7012|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function no(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;Ef(e,32,8680,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;Ef(e,32,12062,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;Ef(e,32,8665,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;Ef(e,32,12067,m)|0;break a}}default:{}}while(0);l=n;return}function oo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;O=qa+208|0;m=qa+80|0;P=qa+64|0;o=qa+192|0;L=qa+56|0;M=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;y=Ii()|0;if(!(a[y+144>>0]|0)){C=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|C^1))Cb(8109,4833,8409,8201);D=(i&64|0)!=0;A=(i&1024|0)==0;if(!(A|D^1))Cb(8213,4833,8410,8201);la=c[244]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;B=(i&65536|0)!=0;if(ma)Co();Q=Kg(y,d,0)|0;cj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Kl();if(ma)p=+Mm()*8.0;else p=+g[oa+4>>2];N=la+5144|0;fa=la+5148|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(O,ga,n,I);$=y+216|0;tf(ga,$,O);lj(P,$,ga);$=P+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5168>>2];else n=0.0;df(pa,n,0.0);tf(ga,$,pa);lj(o,P,ga);do if(ma){eh(ga,P);if(Ak(Q,ga,0)|0){V=Ii()|0;g[O>>2]=+g[O>>2]-+g[V+132>>2];E=18;break}else{Ek();Do();h=0;break}}else{dh(o,+g[fa>>2]);if(fh(o,Q)|0){V=y;E=18}else h=0}while(0);if((E|0)==18){z=kh(P,Q)|0;if(z)c[la+6528>>2]=1;do if(na){K=la+5928|0;R=bw(c[K>>2]|0,42)|0;h=la+10280|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10284>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10288|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10352>>2]=c[K+72>>2];c[la+10356>>2]=c[K+76>>2];c[la+10348>>2]=c[K+68>>2];c[la+10332>>2]=R;c[la+10336>>2]=c[R+4>>2];if((mp(la+10296|0)|0?Nl(la+10308|0)|0:0)?np(la+10320|0)|0:0){Pl(h);break}Cb(8312,4833,8464,8201)}while(0);J=la+6996|0;m=mh(y,Q,(i&1088|0)==0)|0;if(m)u=(c[y+612>>2]|0)==(c[y+620>>2]|0);else u=0;w=m&(u^1);if(z)x=(a[la+876>>0]|0)!=0;else x=0;K=la+6172|0;if((ma?(c[K>>2]|0)==0:0)?(c[J>>2]|0)==(Q|0):0){t=c[la+6176>>2]|0;t=(t|0)==(Yg(V,7052,0)|0)}else t=0;v=c[K>>2]|0;o=(v|0)==(Q|0);s=(i&16|0)!=0&(o^1);h=s&1;if(m|x|t){if(!o){m=la+7040|0;o=c[m>>2]|0;R=la+7e3|0;G=f+1|0;op(R,G);H=la+7012|0;pg(H,G);zf(c[la+7020>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;jp(J);do if((c[J>>2]|0)==(Q|0)){if((o|0)!=(c[m>>2]|0)){E=39;break}pp(J)}else E=39;while(0);if((E|0)==39){c[J>>2]=Q;g[la+7048>>2]=0.0;qp(la+7052|0,(ma^1)&1);h=ma?h:(u|s)&1}if(i&8192|0)a[la+7064>>0]=1;do if(!ma){if(!w){if(!x)break;if(!(a[la+225>>0]|0))break}h=1}while(0)}_g(Q,y);Qh(y);w=0;s=(h&1)!=0;h=c[K>>2]|0}else{w=(a[la+876>>0]|0)!=0;h=v}do if((h|0)==(Q|0)){if(!ea?(a[la+6185>>0]|0)==0:0){R=la+7e3|0;op(R,f+1|0);c[ga>>2]=0;c[la+7040>>2]=pf(c[la+7008>>2]|0,c[R>>2]|0,e,0,ga)|0;c[la+7036>>2]=(c[ga>>2]|0)-e;pp(J)}c[la+7044>>2]=f;t=la+212|0;m=a[t>>0]|0;a[la+6186>>0]=m^1;c[la+10996>>2]=1;n=+g[la+204>>2]-+g[P>>2]-+g[N>>2]+ +g[la+7048>>2];if(ma)p=+g[la+208>>2]-+g[V+220>>2]-+g[fa>>2];else p=+g[la+5932>>2]*.5;o=(a[la+168>>0]|0)!=0;a:do if(s)E=60;else{h=z^1;if(!(o|h)?a[la+881>>0]|0:0){E=60;break}do if(!(h|o^1)){if(!(a[la+881>>0]|0))break;hp(J,65548);hp(J,196621);break a}while(0);do if(a[la+876>>0]|0){if(a[la+10277>>0]|0)break;sp(J,la+7052|0,n,p);jp(J);break a}while(0);if(!(m<<24>>24))break;if(a[la+10277>>0]|0)break;if(!(+g[la+800>>2]!=0.0)?!(+g[la+804>>2]!=0.0):0)break;tp(J,la+7052|0,n,p);jp(J);a[la+10276>>0]=1}while(0);if((E|0)==60){rp(J);a[la+10277>>0]=1}h=la+10277|0;do if(a[h>>0]|0){if(a[t>>0]|0)break;a[h>>0]=0}while(0);m=la+742|0;if(!(b[m>>1]|0))break;if(!(a[la+225>>0]|0)){if(ea)E=79}else if(!((a[la+227>>0]|0)==0|ea^1))E=79;b:do if((E|0)==79){h=0;while(1){o=b[la+742+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[K>>2]|0)==(Q|0)?!(w|(a[la+6185>>0]|0)!=0):0){v=la+226|0;h=a[v>>0]|0;w=h<<24>>24?131072:0;x=la+168|0;m=a[x>>0]|0;do if(!(m<<24>>24)){if(a[la+225>>0]|0?(a[la+228>>0]|0)==0:0){E=92;break}t=la+225|0;h=(a[t>>0]|0)!=0;u=0;o=la+227|0;s=0}else{if(a[la+228>>0]|0?(a[la+225>>0]|0)==0:0){E=92;break}h=la+227|0;m=la+225|0;o=h;h=(a[h>>0]|0)!=0;s=0;E=95}while(0);if((E|0)==92){s=(a[la+227>>0]|h)<<24>>24==0;R=m<<24>>24!=0;m=la+225|0;o=la+227|0;h=(a[(R?o:m)>>0]|0)!=0;if(R)E=95;else{u=0;t=m}}do if((E|0)==95){if(!(a[la+228>>0]|0)){u=0;t=m;break}if(a[m>>0]|0){u=0;t=m;break}u=(a[o>>0]|0)==0;t=m}while(0);if(nh(1,1)|0){hp(J,(u?65540:h?65548:65536)|w);o=0;R=0;H=0;break}if(nh(2,1)|0){hp(J,(u?65541:h?65549:65537)|w);o=0;R=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65542:65538)|w);o=0;R=0;H=0;break}else{ai(V,+vg(+g[V+108>>2]-+g[la+5932>>2],0.0));o=0;R=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[t>>0]|0)){hp(J,(u?65543:65539)|w);o=0;R=0;H=0;break}else{I=+g[V+108>>2]+ +g[la+5932>>2];ai(V,+yf(I,+fn()));o=0;R=0;H=0;break}if(nh(7,1)|0){hp(J,(a[t>>0]|0?65542:65540)|w);o=0;R=0;H=0;break}if(nh(8,1)|0){hp(J,(a[t>>0]|0?65543:65541)|w);o=0;R=0;H=0;break}m=ea^1;if(!(m|(nh(9,1)|0)^1)){hp(J,w|65544);o=0;R=0;H=0;break}if(!(m|(nh(10,1)|0)^1)){do if(!(vp(J)|0)){if(h){hp(J,196620);break}if(!(a[x>>0]|0))break;if(!(a[la+228>>0]|0))break;if(a[o>>0]|0)break;if(a[t>>0]|0)break;hp(J,196612)}while(0);hp(J,w|65545);o=0;R=0;H=0;break}if(nh(11,1)|0){if(!ma){o=0;R=1;H=1;break}h=(a[t>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){o=0;R=h;H=h;break}}else if(h|m){o=0;R=h;H=h;break}c[ga>>2]=10;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break}do if(!A){if(!(nh(0,1)|0))break;if(a[t>>0]|0)break;if(a[v>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(up(ga,i,j,k)|0)hp(J,c[ga>>2]|0);o=0;R=0;H=0;break c}while(0);h=nh(12,1)|0;if(h|s^1){o=h;R=0;H=h;break}if(!(B|(m|(nh(18,1)|0)^1))){hp(J,65546);wp(J);o=0;R=0;H=0;break}if(!s){o=0;R=0;H=0;break}if(!(B|(m|(nh(17,1)|0)^1))){hp(J,65547);wp(J);o=0;R=0;H=0;break}if(nh(13,1)|0){rp(J);a[la+10276>>0]=1;o=0;R=0;H=0;break}do if(!na){if(m|(nh(16,1)|0)^1?!(nh(14,1)|0):0)break;if(ma?!(vp(J)|0):0)break;h=nh(16,1)|0;do if(h){if(vp(J)|0)break;rp(J)}while(0);if(c[la+180>>2]|0){if(vp(J)|0)m=Yo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else m=0;if(vp(J)|0)o=Zo(c[la+7056>>2]|0,c[la+7060>>2]|0)|0;else o=c[la+7040>>2]|0;G=la+7024|0;pg(G,o-m<<2|1);R=la+7032|0;H=c[la+7008>>2]|0;Jf(c[R>>2]|0,c[G>>2]|0,H+(m<<1)|0,H+(o<<1)|0)|0;th(c[R>>2]|0)}if(!h){o=0;R=0;H=0;break c}a[la+10276>>0]=1;xp(J,la+7052|0);o=0;R=0;H=0;break c}while(0);if(m|(nh(15,1)|0)^1){o=0;R=0;H=0;break}m=sh()|0;if(!m){o=0;R=0;H=0;break}s=Bf(((c8(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Hf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){E=177;break}do if(o>>>0<=65535){if(!(up(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;yp(J,la+7052|0,s,h);a[la+10276>>0]=1}while(0);_f(s);o=0;R=0;H=0}else{o=0;R=0;H=w}while(0);if((c[K>>2]|0)==(Q|0)){m=o^1;s=ea^1;if(s|m)h=0;else{zf(e,c[la+7020>>2]|0,f);h=1}if(m|R^1){if(!o)E=187}else if(i&32)E=187;do if((E|0)==187){if(ea){G=la+7024|0;pg(G,c[la+7e3>>2]<<2);Jf(c[la+7032>>2]|0,c[G>>2]|0,c[la+7008>>2]|0,0)|0}d:do if(i&448|0){if(!j)Cb(8420,4833,8732,8201);if(D?nh(0,1)|0:0){m=64;o=0}else E=194;do if((E|0)==194){if(C){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break d;else{m=256;o=19}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7032|0;B=ga+20|0;c[B>>2]=c[ra>>2];E=la+7036|0;F=ga+24|0;c[F>>2]=c[E>>2];m=la+7044|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7008|0;k=c[G>>2]|0;u=la+7052|0;v=Lf(k,k+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7056|0;y=Lf(k,k+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7060|0;k=Lf(k,k+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=k;Cd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Cb(8435,4833,8780,8201);if((c[o>>2]|0)!=(c[m>>2]|0))Cb(8487,4833,8781,8201);if((c[A>>2]|0)!=(i|0))Cb(8532,4833,8782,8201);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=If(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=If(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(k|0)){ra=c[B>>2]|0;c[D>>2]=If(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[F>>2]|0;m=c[B>>2]|0;if((ra|0)==(c8(m)|0)){c[la+7040>>2]=pf(c[G>>2]|0,c[la+7e3>>2]|0,m,0,0)|0;c[E>>2]=c[F>>2];jp(J);break}else Cb(8561,4833,8788,8201)}while(0)}while(0);if(!ea)break;m=c[la+7032>>2]|0;if(!(S8(m,e)|0))break;zf(e,m,f);h=1}while(0);k=(h&1)!=0}else k=0;do if(H){if((c[K>>2]|0)!=(Q|0))break;$g()}while(0);if((c[K>>2]|0)!=(Q|0)|ea^1)D=e;else D=c[la+7032>>2]|0;if(!ma){ra=P;e=c[ra+4>>2]|0;f=L;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=M;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Rf(7,1.0)|0;I=+g[la+5152>>2];c[pa>>2]=c[L>>2];c[pa+4>>2]=c[L+4>>2];c[ga>>2]=c[M>>2];c[ga+4>>2]=c[M+4>>2];dj(pa,ga,ra,1,I)}p=+g[P>>2];C=P+4|0;q=+g[C>>2];r=+g[O>>2];I=+g[O+4>>2];Of(pa,p,q,p+r,q+I);if(ma){O=V+216|0;P=c[O+4>>2]|0;ra=ha;c[ra>>2]=c[O>>2];c[ra+4>>2]=P}else tf(ha,P,N);df(ia,0.0,0.0);if((c[J>>2]|0)!=(Q|0)|ma^1)h=0;else{h=c[K>>2]|0;h=(h|0)==(Yg(V,7052,0)|0)}if(h|(c[K>>2]|0)==(Q|0)){B=la+10272|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7008>>2]|0;bf(ga);bf(ja);v=z+(c[la+7052>>2]<<1)|0;x=la+7056|0;h=c[x>>2]|0;y=la+7060|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((Yo(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;e:while(1){f:do switch(b[u>>1]|0){case 0:break e;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break e}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break f}if((o|0)<2){m=t;h=t;break e}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;zp(T,Df(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+5932|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){zp(U,Df(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){df(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10276|0;do if(!(a[m>>0]|0))n=+g[la+7048>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7048|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7048>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+108|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+220|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;df(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=Yo(m,h)|0;o=z+(U<<1)|0;ra=Zo(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Rf(40,1.0)|0;tf(ca,ha,ja);rf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;g:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+596|0;y=W+8|0;z=la+5928|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break g;h:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break h;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{zp(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Ap(c[z>>2]|0,32)*.5)|0);df(Y,0.0,q-+g[A>>2]);tf(X,ba,Y);df(_,+g[da>>2],r);tf(Z,ba,_);lj(W,X,Z);Ki(X,pa);mj(W,X);Ki(X,pa);if(lh(W,X)|0)Qv(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+596|0;Z=c[o>>2]|0;_=c[la+5928>>2]|0;I=+g[A>>2];rf(ba,ha,aa);ra=Rf(0,1.0)|0;Zv(Z,_,I,ba,ra,D,D+(c[la+7036>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+169>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+i9(n,1.2000000476837158)<=.800000011920929}while(0);tf(ca,ha,ga);rf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];al(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){Ki(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;ol(da,ca);Ov(ra,ca,da,Rf(0,1.0)|0,1.0)}while(0);if(ea){df(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10436|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Bp(D,ga)|0);h=la+5932|0;df(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+5932|0;m=0}da=c[V+596>>2]|0;ea=c[la+5928>>2]|0;I=+g[h>>2];ra=Rf(0,1.0)|0;Zv(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){df(ja,0.0,+g[la+5932>>2]);tf(ga,ia,ja);Cp(ga);Ek();Do()}do if(na)Rl();else{if(!(a[la+10480>>0]|0))break;$i(ha,D,0)}while(0);if(+g[oa>>2]>0.0){df(ka,+g[$>>2]+ +g[la+5168>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];_i(ga,d,0,1)}h=(i&32|0)==0?k:R}}else h=0;l=qa;return h|0}function po(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Bq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Bq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?8680:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((y9(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((y9(n,8665,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((y9(n,8665,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(y9(n,8665,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((y9(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(y9(d,8665,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((y9(n,8665,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function qo(a){a=a|0;return c[a+8>>2]|0}function ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=e8(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=e8(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=so(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function so(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function to(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+uo(b);e=+B(+a);c=+i9(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function uo(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1288+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function vo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0.0;F=l;l=l+64|0;E=F+48|0;C=F+32|0;u=F+8|0;v=F;w=F+24|0;x=F+16|0;y=c[244]|0;z=Ii()|0;t=b;r=c[t+4>>2]|0;A=u;c[A>>2]=c[t>>2];c[A+4>>2]=r;A=b+8|0;r=A;t=c[r+4>>2]|0;q=v;c[q>>2]=c[r>>2];c[q+4>>2]=t;q=Rf(7,1.0)|0;s=+g[y+5152>>2];c[C>>2]=c[u>>2];c[C+4>>2]=c[u+4>>2];c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];dj(C,E,q,1,s);q=i<.9999899864196777|i>1.0000100135803223;v=(k&1|0)==0;if(v)m=+Dl(b);else m=+$h(b);n=m+-4.0;if(!j)m=+vg(n/((f>2]);else m=+g[y+5200>>2];s=+yf(m,n);m=n-s;r=b+4|0;s=s*.5;o=s+((v?+g[b>>2]:+g[r>>2])+2.0);t=b+12|0;p=(v?+g[A>>2]:+g[t>>2])+-2.0-s;if(f*h<0.0){n=1.0/i;G=+D(+(+B(+(0.0-f))),+n);n=G/(G+ +D(+(+B(+h)),+n))}else n=f<0.0?1.0:0.0;u=y+6172|0;do if((c[u>>2]|0)==(d|0)){if(!(a[y+212>>0]|0)){$g();k=0;break}if(m>0.0)m=+Wh((+g[(v?y+204|0:y+208|0)>>2]-o)/m,0.0,1.0);else m=0.0;m=v?m:1.0-m;do if(q)if(m9.999999974752427e-07;m=+D(+(q?(m-n)/(1.0-n):m),+i);m=+yl(+vg(f,0.0),h,m);break}else m=+yl(f,h,m);while(0);m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;k=1}else k=0}else k=0;while(0);m=+wo(+g[e>>2],f,h,i,n);m=+yl(o,p,v?m:1.0-m);Eg(E);if(v){df(w,m-s,+g[r>>2]+2.0);df(x,s+m,+g[t>>2]+-2.0);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}else{df(w,+g[b>>2]+2.0,m-s);df(x,+g[A>>2]+-2.0,s+m);lj(C,w,x);c[E>>2]=c[C>>2];c[E+4>>2]=c[C+4>>2];c[E+8>>2]=c[C+8>>2];c[E+12>>2]=c[C+12>>2]}A=c[z+596>>2]|0;C=Rf((c[u>>2]|0)==(d|0)?20:19,1.0)|0;Qv(A,E,E+8|0,C,+g[y+5204>>2],15);l=F;return k|0}function wo(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+yf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+vg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function xo(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Ii()|0;if(!(a[o+144>>0]|0)){u=c[244]|0;p=Kg(o,b,0)|0;m=+Kl();cj(x,b,0,1,-1.0);w=o+216|0;v=u+5148|0;df(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);tf(q,w,z);lj(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5168>>2];else m=0.0;df(k,m,0.0);tf(z,w,k);lj(q,y,z);a:do if(fh(q,p)|0){n=kh(y,p)|0;i=(i|0)==0?7910:i;k=ro(i,3)|0;do if(mh(o,p,1)|0){_g(p,o);Qh(o);r=11}else{if((n?a[u+876>>0]|0:0)?(_g(p,o),Qh(o),a[u+225>>0]|0):0){r=11;break}if((c[u+6172>>2]|0)==(p|0)?(c[u+10364>>2]|0)==(p|0):0)break;dh(q,+g[v>>2]);k=vo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(Ef(z,64,i,s)|0)|0;df(s,.5,.5);bj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){df(t,+g[w>>2]+ +g[u+5168>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];_i(s,b,0,1)}break a}while(0);if((r|0)==11)c[u+10364>>2]=0;k=mo(y,b,1,d,p,k)|0}else{dh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function yo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;z=l;l=l+128|0;s=z;x=z+120|0;y=z+104|0;n=z+88|0;t=z+16|0;u=z+8|0;v=z+80|0;p=Ii()|0;if(!(a[p+144>>0]|0)){w=c[244]|0;q=Kg(p,b,0)|0;cj(x,b,0,1,-1.0);r=p+216|0;tf(n,r,d);lj(y,r,n);r=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[w+5168>>2];else m=0.0;df(u,m,0.0);tf(t,r,u);lj(n,y,t);o=w+5148|0;dh(n,+g[o>>2]);if(fh(y,q)|0){n=kh(y,q)|0;j=(j|0)==0?7910:j;d=ro(j,3)|0;if(n?a[w+876>>0]|0:0){_g(q,p);Qh(p)}d=vo(y,q,e,f,i,k,d,1)|0;h[s>>3]=+g[e>>2];e=t+(Ef(t,64,j,s)|0)|0;j=y+4|0;df(s,+g[y>>2],+g[j>>2]+ +g[o>>2]);df(u,.5,0.0);bj(s,r,t,e,0,u,0);if(+g[x>>2]>0.0){df(v,+g[r>>2]+ +g[w+5168>>2],+g[j>>2]+ +g[o>>2]);c[s>>2]=c[v>>2];c[s+4>>2]=c[v+4>>2];_i(s,b,0,1)}}else d=0}else d=0;l=z;return d|0}function zo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=xo(a,f,c,d,7915,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Ao(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=yo(a,b,j,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Bo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(xo(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Co(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Ii()|0;i=d+216|0;l=d+368|0;ul(l,(c[l>>2]|0)+1|0);l=lq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+240|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+404|0;c[l+16>>2]=c[h>>2];k=d+408|0;c[l+20>>2]=c[k>>2];e=d+248|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+252>>2];b=d+264|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[244]|0)+6184>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+412>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+220>>2]+-9999.0;return}function Do(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[244]|0;f=Ii()|0;h=f+368|0;if(Nq(h)|0)Cb(9808,4833,10729,31422);n=lq(h)|0;i=f+240|0;lj(b,n,i);q=b+8|0;$k(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+216|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;$k(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+248>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+252|0;c[m>>2]=k;c[f+404>>2]=c[n+16>>2];c[f+408>>2]=c[n+20>>2];g[f+264>>2]=+g[f+220>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+vg(+g[f+260>>2],(c[j>>2]=k,+g[j>>2]));eh(d,b);bh(d,+g[i>>2]);fh(b,0)|0}if((((a[n+36>>0]|0)==0?a[e+6184>>0]|0:0)?(o=c[e+6172>>2]|0,o|0):0)?(c[(c[e+6196>>2]|0)+604>>2]|0)==(c[f+604>>2]|0):0)c[f+272>>2]=o;q=f+276|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];Rq(h);l=p;return}function Eo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,2,c,d,e,f)|0}function Fo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,3,c,d,e,f)|0}function Go(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Bo(a,b,4,c,d,e,f)|0}function Ho(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Ii()|0)+144>>0]|0)){j=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){l=j+5168|0;j=0;k=0;do{fo(k);j=j|(On(7929,d+(k<<2)|0,f,h,i)|0);ch(0.0,+g[l>>2]);kl();mg();k=k+1|0}while((k|0)!=(e|0))}else j=0;kl();on(b,Yi(b,0)|0);Do()}else j=0;return j|0}function Io(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,2,c,d,e)|0}function Jo(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,3,c,d,e)|0}function Ko(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ho(a,b,4,c,d,e)|0}function Lo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=0,C=0;y=l;l=l+32|0;u=y+16|0;t=y+24|0;r=y+8|0;s=y;w=c[244]|0;p=w+6172|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[w+6156>>2]|0)==(d|0)?8:7;q=Rf(q,1.0)|0;C=b;z=c[C+4>>2]|0;A=r;c[A>>2]=c[C>>2];c[A+4>>2]=z;A=b+8|0;z=c[A+4>>2]|0;b=s;c[b>>2]=c[A>>2];c[b+4>>2]=z;o=+g[w+5152>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];dj(t,u,q,1,o);do if((c[p>>2]|0)==(d|0)){if(!(a[w+212>>0]|0)){$g();b=0;break}if(a[w+6185>>0]|0){c[w+10388>>2]=c[e>>2];df(u,0.0,0.0);z=u;A=c[z+4>>2]|0;C=w+10392|0;c[C>>2]=c[z>>2];c[C+4>>2]=A}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[w+10400>>2];d=w+10388|0;m=+g[d>>2];Ej(u,0,1.0);o=+g[u>>2];b=w+10392|0;n=o-+g[b>>2];if((a[w+226>>0]|0)!=0?(v=+g[w+10408>>2],v>=0.0):0)n=n*v;if((a[w+227>>0]|0)!=0?(x=+g[w+10404>>2],x>=0.0):0)n=n*x;n=f*n;g[b>>2]=o;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){C=m>=0.0;x=C?1.0:-1.0;m=+D(+(C?m:-m),+(1.0/k))+x*n;C=m>=0.0;m=(C?1.0:-1.0)*(x*+D(+(C?m:-m),+k))}else m=m+n;if(h>2]=m}m=+to(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;while(0);l=y;return b|0}function Mo(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;C=l;l=l+144|0;u=C;z=C+136|0;A=C+120|0;B=C+104|0;p=C+88|0;v=C+16|0;m=C+8|0;w=C+80|0;q=Ii()|0;if(!(a[q+144>>0]|0)){x=c[244]|0;r=Kg(q,b,0)|0;n=+Kl();cj(z,b,0,1,-1.0);y=q+216|0;o=x+5144|0;s=x+5148|0;df(p,n,+g[z+4>>2]+ +g[s>>2]*2.0);tf(B,y,p);lj(A,y,B);tf(p,A,o);y=A+8|0;rf(v,y,o);lj(B,p,v);n=+g[z>>2];if(n>0.0)n=n+ +g[x+5168>>2];else n=0.0;df(m,n,0.0);tf(v,y,m);lj(p,A,v);a:do if(fh(p,r)|0){o=kh(A,r)|0;j=(j|0)==0?7910:j;m=ro(j,3)|0;b:do if(mh(q,r,1)|0){_g(r,q);Qh(q);t=13}else{do if(o){if((a[x+876>>0]|0)==0?(a[x+881>>0]|0)==0:0)break;_g(r,q);Qh(q);if(a[x+225>>0]|0){t=13;break b}if(a[x+881>>0]|0){t=13;break b}}while(0);if((c[x+6172>>2]|0)==(r|0)?(c[x+10364>>2]|0)==(r|0):0)break;dh(p,+g[s>>2]);m=Lo(A,r,d,e,f,i,m,k)|0;h[u>>3]=+g[d>>2];d=v+(Ef(v,64,j,u)|0)|0;df(u,.5,.5);bj(A,y,v,d,0,u,0);if(+g[z>>2]>0.0){df(w,+g[y>>2]+ +g[x+5168>>2],+g[B+4>>2]);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];_i(u,b,0,1)}break a}while(0);if((t|0)==13)c[x+10364>>2]=0;m=mo(A,b,1,d,r,m)|0}else{dh(p,+g[s>>2]);m=0}while(0)}else m=0;l=C;return m|0}function No(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Ii()|0)+144>>0]|0)){l=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){n=l+5168|0;l=0;m=0;do{fo(m);l=l|(Mo(7929,d+(m<<2)|0,f,h,i,j,k)|0);ch(0.0,+g[n>>2]);kl();mg();m=m+1|0}while((m|0)!=(e|0))}else l=0;kl();on(b,Yi(b,0)|0);Do()}else l=0;return l|0}function Oo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,2,c,d,e,f,g)|0}function Po(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,3,c,d,e,f,g)|0}function Qo(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return No(a,b,4,c,d,e,f,g)|0}function Ro(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+yf(i,n);o=Mo(7933,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+vg(h,n);k=o|(Mo(7939,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl();m=k}else m=0;return m|0}function So(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=Mo(a,j,d,+(e|0),+(f|0),h|0?h:7924,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function To(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Ii()|0)+144>>0]|0)){k=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){m=k+5168|0;k=0;l=0;do{fo(l);k=k|(So(7929,d+(l<<2)|0,f,h,i,j)|0);ch(0.0,+g[m>>2]);kl();mg();l=l+1|0}while((l|0)!=(e|0))}else k=0;kl();on(b,Yi(b,0)|0);Do()}else k=0;return k|0}function Uo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,2,c,d,e,f)|0}function Vo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,3,c,d,e,f)|0}function Wo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return To(a,b,4,c,d,e,f)|0}function Xo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Ii()|0)+144>>0]|0)){m=c[244]|0;el(b);Co();Jl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=Yo(i,l)|0;n=So(7933,d,f,o?-2147483648:h,l,j)|0;mg();m=m+5168|0;ch(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=Zo(h,l)|0;l=n|(So(7939,e,f,l,o?2147483647:i,k|0?k:j)|0);mg();ch(0.0,+g[m>>2]);on(b,Yi(b,0)|0);Do();kl()}else l=0;return l|0}function Yo(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function Zo(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function _o(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Ii()|0;if(!(a[F+144>>0]|0)){P=c[244]|0;cj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Kl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5148>>2]*2.0;g[o>>2]=q}E=F+216|0;df(Q,p,q);tf(H,E,Q);lj(J,E,H);E=P+5144|0;tf(H,J,E);G=J+8|0;rf(Q,G,E);lj(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5168>>2];else q=0.0;df(Q,q,0.0);tf(H,G,Q);lj(r,J,H);E=P+5148|0;dh(r,+g[E>>2]);if(fh(r,0)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+zd[e&15](f,o);q=+yf(q,D);s=+vg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Rf(7,1.0)|0;A=+g[P+5152>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];dj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(Yo(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+Wh((+g[P+204>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Cb(7945,4833,7889,7980);p=+zd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+zd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;$j(7987,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;$j(8007,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;df(H,0.0,1.0-+Qf((+zd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Rf(C?36:38,1.0)|0;z=Rf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+596|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;df(Q,p,1.0-+Qf((+zd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));fl(L,K,x,H);if(!C){df(N,+g[Q>>2],m);fl(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Qv(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;fl(M,K,x,N);Ov(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Cb(8017,4833,7914,7980)}while(0)}if(k|0){df(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);df(Q,.5,0.0);bj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){df(O,+g[G>>2]+ +g[P+5168>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];_i(H,d,0,1)}}}l=R;return}function $o(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(0,a,b,d,e,f,g,h,i,m);l=k;return}function ap(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];_o(1,a,b,d,e,f,g,h,i,m);l=k;return}function bp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Ii()|0;if((a[j+144>>0]|0)==0?(q=c[244]|0,A=j+216|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Kl(),d=q+5148|0,w=+g[q+5932>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),tf(n,f,s),lj(r,f,n),dh(r,+g[d>>2]),fh(r,0)|0):0){b=+Qf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Rf(7,1.0)|0;A=q+5152|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];dj(n,u,y,1,x);x=-+g[q+5156>>2];df(u,x,x);El(r,u);x=+yl(+g[r>>2],+g[d>>2],b);df(u,x,+g[r+12>>2]);y=c[j+596>>2]|0;z=Rf(38,1.0)|0;mz(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;Ef(n,32,8054,o)|0;e=n}cj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+Wh(+g[u>>2]+ +g[q+5160>>2],+g[r>>2],+g[d>>2]-b-+g[q+5168>>2]);df(t,x,+g[r+4>>2]);df(p,0.0,.5);bj(t,d,e,0,s,p,r)}}l=v;return}function cp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;p=x+104|0;q=x+40|0;i=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;j=x+56|0;u=x+32|0;k=x+8|0;m=x+80|0;n=x;e=Ii()|0;if(!(a[e+144>>0]|0)){o=c[244]|0;h=Kg(e,b,0)|0;cj(p,b,0,1,-1.0);e=e+216|0;f=o+5148|0;y=+g[p+4>>2]+ +g[f>>2]*2.0;df(v,y,y);tf(w,e,v);lj(q,e,w);dh(q,+g[f>>2]);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];if(+g[p>>2]>0.0)ch(0.0,+g[o+5168>>2]);df(v,0.0,+g[f>>2]);tf(w,e,v);df(j,0.0,+g[f>>2]);tf(t,e,j);tf(s,t,p);lj(r,w,s);if(+g[p>>2]>0.0){y=+Dl(r);df(w,y,+$h(q));bh(w,+g[f>>2]);cl(v,q,r);$k(s,q+8|0,r+8|0);lj(w,v,s);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[i+8>>2]=c[w+8>>2];c[i+12>>2]=c[w+12>>2]}if(fh(i,h)|0){e=hl(i,h,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;j=q;i=c[j+4>>2]|0;h=u;c[h>>2]=c[j>>2];c[h+4>>2]=i;h=q+8|0;i=c[h+4>>2]|0;j=k;c[j>>2]=c[h>>2];c[j+4>>2]=i;s=a[s>>0]|0;t=Rf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[o+5152>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];dj(v,w,t,1,y);if(a[d>>0]|0){y=+Dl(q);y=+vg(1.0,+(~~(+yf(y,+$h(q))/6.0)|0));df(v,y,y);tf(m,q,v);v=Rf(18,1.0)|0;y=+Dl(q)-y*2.0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];hj(w,v,y)}if(a[o+10480>>0]|0)$i(r,a[d>>0]|0?8061:8065,0);if(+g[p>>2]>0.0){t=r;u=c[t+4>>2]|0;v=n;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[n>>2];c[w+4>>2]=c[n+4>>2];_i(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=cp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function ep(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;i=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;j=Ii()|0;if(!(a[j+144>>0]|0)){q=c[244]|0;h=Kg(j,b,0)|0;cj(r,b,0,1,-1.0);e=j+216|0;f=q+5148|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;df(i,k,k);tf(v,e,i);lj(m,e,v);dh(m,+g[f>>2]);c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ch(0.0,+g[q+5168>>2]);df(t,0.0,+g[f>>2]);tf(v,e,t);df(u,0.0,+g[f>>2]);tf(o,e,u);tf(n,o,r);lj(s,v,n);if(+g[r>>2]>0.0){k=+Dl(s);df(v,k,+$h(m));bh(v,+g[f>>2]);fp(i,s)}if(fh(i,h)|0){Dn(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+$h(m)*.5;e=hl(i,h,n,o,0)|0;h=j+596|0;j=c[h>>2]|0;n=a[n>>0]|0;Xv(j,t,k,Rf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Dl(m);x=+vg(1.0,+(~~(+yf(x,+$h(m))/6.0)|0));o=c[h>>2]|0;Xv(o,t,k-x,Rf(18,1.0)|0,16)}f=q+5156|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;df(u,1.0,1.0);tf(v,t,u);o=Rf(6,1.0)|0;Wv(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Rf(5,1.0)|0;Wv(o,t,k,u,16,+g[f>>2])}if(a[q+10480>>0]|0)$i(s,d?8069:8073,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];_i(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function fp(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function gp(a,b,d){a=a|0;b=b|0;d=d|0;a=ep(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function hp(b,c){b=b|0;c=c|0;ip(b,b+56|0,c);a[b+3280>>0]=1;jp(b);return}function ip(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{et(e,f);a[f+15>>0]=0;break}case 16:{ft(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else gt(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else ht(e,f);it(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=kt(e,c[f>>2]|0)|0;it(e,f);break}else{gt(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))ht(e,f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;nt(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+ot(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))gt(f)}else jt(f);it(e,f);mt(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;nt(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+ot(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);it(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=_s(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{it(e,f);gt(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((qt(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=_s(e)|0;it(e,f);gt(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((qt(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{it(e,f);jt(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(qt(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=kt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))jt(f);s=lt(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;it(e,f);break b}case 196614:{jt(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{jt(f);e=_s(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=_s(e)|0;it(e,f);jt(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(qt(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=lt(e,c[f>>2]|0)|0;it(e,f);break}else{ht(e,f);break}}switch(h|0){case 196608:break;case 196609:{jt(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;it(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}it(e,f);jt(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Zs(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(_s(e)|0)):0){$s(e,f,i);at(e,c[f>>2]|0,1);if(bt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(ct(e,f),bt(e,c[f>>2]|0,r,1)|0):0){dt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=_s(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))pt(e,f,h,1)}else ct(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){it(e,f);h=c[f>>2]|0;if((h|0)>0){pt(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else ct(e,f);a[f+15>>0]=0}while(0);l=u;return}function jp(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function kp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Cb(8077,4833,8312,37777);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=c8(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;_aa(j+g|0,j|0,f-d|0)|0;f=i}Zaa((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function mp(a){a=a|0;return (c[a>>2]|0)==0|0}function np(a){a=a|0;return (c[a>>2]|0)==0|0}function op(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))zu(a,Au(a,b)|0);c[a>>2]=b;return}function pp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=Yo(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=Yo(c[a>>2]|0,b)|0;return}function qp(a,b){a=a|0;b=b|0;Ct(a,b);return}function rp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function sp(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=Dt(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function tp(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=Dt(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function up(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(Y8(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Bq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Cd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function vp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function wp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function xp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){ct(b,d);a[d+15>>0]=0}return}function yp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;it(d,e);ct(d,e);if(!(bt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{dt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function zp(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[244]|0;m=c[o+5928>>2]|0;p=+g[o+5932>>2];l=p/+g[m>>2];df(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Ap(m,d);d=k;continue}else if((n|0)==6){n=0;i=+vg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Ap(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=Et(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Bp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Cp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Ii()|0;if(!(a[e+144>>0]|0)){e=e+216|0;tf(d,e,b);lj(c,e,d);dh(c,0.0);fh(c,0)|0}l=f;return}function Dp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return oo(a,b,c,d,e|1048576,f,g)|0}function Ep(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;cj(s,b,0,1,-1.0);Co();el(b);u=+Om();df(n,u,u);m=(f|0)!=0;if(m){u=+Kl();kg(+vg(1.0,u-(+g[n>>2]+ +g[r+5168>>2])*2.0))}Fp(d,e,i,k);if(lg(58608,k,64,j>>>1&1^1|j|16,0,0)|0)i=po(k,qo((c[244]|0)+7012|0)|0,d,e,i)|0;else i=0;if(m){mg();j=r+5168|0;ch(0.0,+g[j>>2]);if(zn(8661,n,129)|0){Gp(d,45,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}ch(0.0,+g[j>>2]);if(zn(8663,n,129)|0){Gp(d,43,e,(h|0)!=0&(a[r+225>>0]|0)!=0?h:f);i=1}}kl();if(+g[s>>2]>0.0){ch(0.0,+g[r+5168>>2]);r=r+5148|0;df(p,+g[q+216>>2],+g[q+220>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];_i(o,b,0,1);bh(s,+g[r>>2])}Do()}else i=0;l=t;return i|0}function Fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];Ef(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];Ef(e,64,d,i)|0;break}default:{}}l=j;return}function Gp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function Hp(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[8665]|0;a[n+1>>0]=a[8666]|0;a[n+2>>0]=a[8667]|0}else{c[j>>2]=h;Ef(n,16,8668,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Ep(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function Ip(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Ep(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?8675:8680,f)|0;l=g;return f|0}function Jp(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Ii()|0)+144>>0]|0)){i=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){k=i+5168|0;i=0;j=0;do{fo(j);i=i|(Hp(7929,d+(j<<2)|0,0.0,0.0,f,h)|0);ch(0.0,+g[k>>2]);kl();mg();j=j+1|0}while((j|0)!=(e|0))}else i=0;kl();on(b,Yi(b,0)|0);Do()}else i=0;return i|0}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,2,c,d)|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,3,c,d)|0}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jp(a,b,4,c,d)|0}function Np(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Ii()|0)+144>>0]|0)){h=c[244]|0;Co();el(b);Jl(e,0.0);if((e|0)>0){j=h+5168|0;h=0;i=0;do{fo(i);h=h|(Ip(7929,d+(i<<2)|0,0,0,f)|0);ch(0.0,+g[j>>2]);kl();mg();i=i+1|0}while((i|0)!=(e|0))}else h=0;kl();on(b,Yi(b,0)|0);Do()}else h=0;return h|0}function Op(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,2,c)|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,3,c)|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return Np(a,b,4,c)|0}function Rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0.0,M=0,N=0;K=l;l=l+176|0;F=K+152|0;E=K+136|0;D=K+40|0;x=K+128|0;I=K+16|0;j=K+104|0;y=K+161|0;k=K+160|0;z=K+64|0;p=K+32|0;m=K+8|0;q=K+120|0;r=K;s=K+96|0;t=K+88|0;G=K+56|0;B=K+80|0;H=K+48|0;J=c[244]|0;u=J+6344|0;v=(a[u>>0]|0)==0;a[u>>0]=0;f=Ii()|0;if(!(a[f+144>>0]|0)){w=Kg(f,b,0)|0;i=+Kl();cj(x,b,0,1,-1.0);o=f+216|0;C=J+5144|0;n=J+5148|0;df(E,i,+g[x+4>>2]+ +g[n>>2]*2.0);tf(F,o,E);lj(I,o,F);o=I+8|0;h=+g[x>>2];if(h>0.0)h=h+ +g[J+5168>>2];else h=0.0;df(E,h,0.0);tf(F,o,E);lj(j,I,F);dh(j,+g[n>>2]);if(fh(j,w)|0){j=hl(I,w,y,k,0)|0;k=gk(w)|0;L=+Om();df(E,L,0.0);rf(F,o,E);lj(z,I,F);f=I;M=c[f+4>>2]|0;N=p;c[N>>2]=c[f>>2];c[N+4>>2]=M;N=o;M=c[N+4>>2]|0;f=m;c[f>>2]=c[N>>2];c[f+4>>2]=M;f=Rf(7,1.0)|0;M=J+5152|0;h=+g[M>>2];c[E>>2]=c[p>>2];c[E+4>>2]=c[p+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];dj(E,F,f,1,h);f=I+4|0;df(q,+g[o>>2]-L,+g[f>>2]);N=o;m=c[N+4>>2]|0;p=r;c[p>>2]=c[N>>2];c[p+4>>2]=m;y=Rf(k|(a[y>>0]&1)!=0?22:21,1.0)|0;h=+g[M>>2];c[E>>2]=c[q>>2];c[E+4>>2]=c[q+4>>2];c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];dj(E,F,y,1,h);h=+g[n>>2];df(s,+g[o>>2]-L+h,h+ +g[f>>2]);c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];fj(F,3,1.0);if(d|0){tf(F,I,C);df(E,0.0,0.0);bj(F,z+8|0,d,0,0,E,0)}if(+g[x>>2]>0.0){df(t,+g[o>>2]+ +g[J+5168>>2],+g[f>>2]+ +g[n>>2]);c[F>>2]=c[t>>2];c[F+4>>2]=c[t+4>>2];_i(F,b,0,1)}if(k|j^1)if(k)A=12;else f=0;else{bk(w,0);A=12}if((A|0)==12){if(v){f=(e&30|0)==0?e|4:e;if(!(Sp(f&30)|0))Cb(8683,4833,9219,32091);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;df(F,i,0.0);df(E,3402823466385288598117041.0e14,+Tp(e));Dm(F,E,0,0);e=f}else{a[u>>0]=1;N=J+6320|0;g[N>>2]=+vg(+g[N>>2],i)}c[D>>2]=c[J+6256>>2];Ef(E,16,8735,D)|0;f=Xj(E)|0;if(f|0){Yk(D,f);Zk(B,f,D);c[F>>2]=c[B>>2];c[F+4>>2]=c[B+4>>2];_k(G,f,F);f=f+180|0;if(e&1|0)c[f>>2]=0;ol(H,I);bl(F,H,G,f,I,1);df(H,0.0,0.0);pk(F,0,H)}if(!(hi(E,0,67109187)|0)){lk();Cb(16777,4833,9245,32091)}i=+g[C>>2];h=+g[J+5096>>2];if(i!=h)Up(i-h);f=1}}else f=0}else f=0;l=K;return f|0}function Sp(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function Tp(a){a=a|0;var b=0.0,d=0;d=c[244]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5164>>2];b=+g[d+5100>>2]*2.0+((+g[d+5932>>2]+b)*+(a|0)-b)}return +b}function Up(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Vp(){var a=0.0,b=0.0,d=0;d=c[244]|0;a=+g[d+5144>>2];b=+g[d+5096>>2];if(a!=b)Wp(a-b);lk();return}function Wp(a){a=+a;var b=0,d=0;b=c[244]|0;d=Ii()|0;if(!(a!=0.0))a=+g[b+5184>>2];b=d+404|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+216>>2]=a+ +g[d+20>>2]+ +g[d+412>>2];return}function Xp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;j=o+16|0;m=o+8|0;n=o;k=c[244]|0;c[j>>2]=0;i=c[d>>2]|0;if((i|0)>-1&(i|0)<(g|0))Od[e&63](f,i,j)|0;if((h|0)!=-1?(a[k+6344>>0]|0)==0:0){p=+Tp(h);df(m,0.0,0.0);df(n,3402823466385288598117041.0e14,p);Dm(m,n,0,0)}if(Rp(b,c[j>>2]|0,0)|0){if((g|0)>0){h=0;b=0;do{Gn(h);j=(h|0)==(c[d>>2]|0);if(Od[e&63](f,h,m)|0)i=c[m>>2]|0;else{c[m>>2]=8748;i=8748}df(n,0.0,0.0);if(Yp(i,j,0,n)|0){c[d>>2]=h;b=1}if(j)mn();kl();h=h+1|0}while((h|0)!=(g|0))}else b=0;Vp()}else b=0;l=o;return b|0}function Yp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;u=G+16|0;t=G+121|0;v=G+120|0;w=G+8|0;x=G;y=G+40|0;z=Ii()|0;if(!(a[z+144>>0]|0)){A=c[244]|0;B=(e&2|0)!=0;if(B?c[z+416>>2]|0:0)Li();r=Kg(z,b,0)|0;cj(C,b,0,1,-1.0);n=f+4|0;df(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=z+216|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[z+252>>2]+(c[j>>2]=H,+g[j>>2]);tf(F,q,p);lj(D,q,F);dh(D,0.0);i=+g[z+84>>2];if(B)Km(h);else{qh(k);h=k}s=+g[h>>2];K=+vg(+g[C>>2],s+ +g[z+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;df(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);tf(F,q,m);lj(u,q,F);if(J&+g[f>>2]!=0.0){J=u+8|0;n=J;o=J;i=+g[J>>2]}else{o=u+8|0;i=i+ +g[o>>2];g[o>>2]=i;o=u+8|0;n=o}N=+g[A+5160>>2];M=+(~~(N*.5)|0);K=+g[A+5164>>2];L=+(~~(K*.5)|0);g[u>>2]=+g[u>>2]-M;J=u+4|0;g[J>>2]=+g[J>>2]-L;g[n>>2]=N-M+i;J=u+12|0;g[J>>2]=K-L+ +g[J>>2];if(!(fh(u,r)|0))if(B?(c[z+416>>2]|0)!=0:0){Zp(-1);h=0}else h=0;else{h=e&32;f=(h|0)!=0;h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=hl(u,r,t,v,(e&4|0)==0?h:h|18)|0;k=a[t>>0]|0;m=k<<24>>24==0;if((f^1)&d|m^1){J=Rf(m|(a[v>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=u;H=c[I+4>>2]|0;v=w;c[v>>2]=c[I>>2];c[v+4>>2]=H;v=o;H=c[v+4>>2]|0;I=x;c[I>>2]=c[v>>2];c[I+4>>2]=H;c[E>>2]=c[w>>2];c[E+4>>2]=c[w+4>>2];c[F>>2]=c[x>>2];c[F+4>>2]=c[x+4>>2];dj(E,F,J,0,0.0)}if(B?c[z+416>>2]|0:0){Zp(-1);qh(y);g[n>>2]=+g[n>>2]-(+g[y>>2]-s)}if(f){Bk(0,A+5256|0);df(F,0.0,0.0);bj(D,o,b,0,C,F,0);Gk(1)}else{df(F,0.0,0.0);bj(D,o,b,0,C,F,0)}if((h?((e&1|0)==0?(c[z+8>>2]&67108864|0)!=0:0):0)?(c[z+320>>2]&32|0)==0:0)ik()}}else h=0;l=G;return h|0}function Zp(a){a=a|0;var b=0,d=0;b=c[(Cg()|0)+416>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(Xq(b,a)|0)+12|0;Hi(d,(Xq(b,a)|0)+20|0,0);return}function _p(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(Yp(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Ii()|0;if(!(a[j+144>>0]|0)){k=Ah()|0;m=ho(b)|0;cj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Kl();t=+Nm()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];df(h,t,+vg(+g[e+4>>2],+g[n+4>>2]));d=j+216|0;tf(i,d,h);lj(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;df(q,t>0.0?t+ +g[e>>2]:0.0,0.0);tf(i,d,q);lj(p,o,i);q=j+276|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Co();if(+g[n>>2]>0.0){df(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];_i(i,b,0,1)}eh(i,o);Ak(m,i,0)|0;d=1}else d=0;l=s;return d|0}function aq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=Yo(b,7)|0;bf(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+Nm();g[d+4>>2]=f+ +g[(Ah()|0)+72>>2];d=$p(a,d)|0;l=e;return d|0}function bq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Ii()|0)+600>>2]|0;b=e+276|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Ah()|0;Ek();ch(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+216|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;dh(d,+g[b+56>>2]);Do();l=a;return}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(aq(a,f,g)|0){dq(j,f,+Nm());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(Bg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Od[d&63](e,f,k)|0))c[k>>2]=8748;fo(f);o=c[k>>2]|0;df(m,0.0,0.0);if(Yp(o,g,0,m)|0){c[b>>2]=f;a=1}kl();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}bq();eq(j)}else a=0;l=n;return a|0}function dq(a,b,c){a=a|0;b=b|0;c=+c;wg(a,b,c);return}function eq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Cb(12113,37262,1307,12130)}function fq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Ii()|0;if(!(a[q+144>>0]|0)){r=c[244]|0;h=q+216|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;cj(j,b,0,1,-1.0);m=f?16:48;if((c[q+316>>2]|0)==1){i=+g[j>>2];v=r+5160|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);gf(o,v,2.0);Dk(12,o);df(o,i,0.0);x=Yp(b,0,m,o)|0;Fk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)df(t,0.0,0.0);else cj(t,d,0,0,-1.0);n=r+5932|0;y=+ug(q+488|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));Ol(k);i=+vg(0.0,+g[k>>2]-y);df(o,y,0.0);h=Yp(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Bk(0,r+5256|0);df(v,i+ +g[q+508>>2],0.0);tf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];_i(o,d,0,0);Gk(1)}if(e){y=+g[n>>2];df(v,i+ +g[q+512>>2]+y*.4000000059604645,y*.1340000033378601*.5);tf(p,s,v);x=Rf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];hj(o,x,y)}}}else h=0;l=w;return h|0}function gq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=fq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=fq(b,c,0,e)|0;return b|0}function hq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[244]|0;df(d,0.0,0.0);df(e,0.0,0.0);pk(d,0,e);df(d,+g[a+4>>2],+g[a+5936>>2]+ +g[a+5148>>2]*2.0);gi(d,0);Ck(2,0.0);df(d,0.0,0.0);Dk(4,d);if(hi(8763,0,1295)|0?iq()|0:0){e=(c[a+6140>>2]|0)+296|0;g[e>>2]=+g[a+5224>>2]+ +g[e>>2];a=1}else{Ni();Fk(2);a=0}l=b;return a|0}function iq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+32|0;e=j+16|0;h=j;i=Ii()|0;do if((a[i+144>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+293|0;if(!(a[f>>0]|0)){Co();el(8806);ml(d,i);k=+g[d>>2];n=+hf(k+.5);b=d+4|0;m=+hf(+g[b>>2]+ +g[i+96>>2]+.5);k=+hf(+vg(k,+g[d+8>>2]-+g[i+92>>2])+.5);al(e,n,m,k,+hf(+g[d+12>>2]+.5));nl(h,i);mj(e,h);Hi(e,e+8|0,0);df(h,+g[d>>2]+ +g[i+296>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+216|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+316>>2]=1;a[f>>0]=1;wn();b=1;break}else Cb(8777,4833,9625,32792)}else b=0;while(0);l=j;return b|0}function jq(){kq();Ni();Fk(2);return}function kq(){var b=0,d=0,e=0,f=0,h=0.0;f=l;l=l+16|0;b=f;d=Ii()|0;do if(!(a[d+144>>0]|0)){if(!(c[d+8>>2]&1024))Cb(8816,4833,9649,32805);e=d+293|0;if(!(a[e>>0]|0))Cb(8857,4833,9650,32805);else{Li();kl();h=+g[d+216>>2];ml(b,d);g[d+296>>2]=h-+g[b>>2];a[(lq(d+368|0)|0)+37>>0]=0;Do();c[d+316>>2]=0;a[e>>0]=0;break}}while(0);l=f;return}function lq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Cb(37253,37262,1040,13011);return 0}function mq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+80|0;E=J+16|0;k=J+72|0;I=J+8|0;p=J;o=J+64|0;s=J+56|0;y=J+48|0;z=J+40|0;A=J+32|0;C=Ii()|0;if(!(a[C+144>>0]|0)){F=c[244]|0;G=Kg(C,b,0)|0;cj(k,b,0,1,-1.0);e=gk(G)|0;H=C+8|0;if((c[H>>2]&67108864|0)==0?(f=F+6244|0,h=c[F+6256>>2]|0,(c[f>>2]|0)>(h|0)):0){t=c[(Dj(f,h)|0)+12>>2]|0;t=(t|0)==(Kg(C,6611,0)|0);h=F+6144|0;f=c[h>>2]|0;if(t){c[h>>2]=C;t=f;q=1}else{t=f;q=0}}else{h=F+6144|0;t=c[h>>2]|0;q=0}bf(I);i=C+216|0;f=i;K=c[f>>2]|0;f=c[f+4>>2]|0;r=p;c[r>>2]=K;c[r+4>>2]=f;r=C+316|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=f,+g[j>>2]);if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[F+5148>>2];df(E,m,n+ +Sk(C));s=E;f=c[s+4>>2]|0;K=I;c[K>>2]=c[s>>2];c[K+4>>2]=f;K=F+5160|0;g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*.5)|0);gf(E,K,2.0);Dk(12,E);df(E,+g[k>>2],0.0);f=Yp(b,e,d?9:41,E)|0;Fk(1);g[i>>2]=+g[i>>2]+ +(~~(+g[K>>2]*-.5)|0);if(d)D=13;else{o=f;p=0}}else{df(E,m,n-+g[F+5100>>2]);K=E;f=c[K+4>>2]|0;i=I;c[i>>2]=c[K>>2];c[i+4>>2]=f;i=F+5932|0;n=+ug(C+488|0,+g[k>>2],0.0,+(~~(+g[i>>2]*1.2000000476837158)|0));Ol(o);m=+vg(0.0,+g[o>>2]-n);df(E,n,0.0);f=Yp(b,e,d?73:105,E)|0;if(!d)Bk(0,F+5256|0);df(y,m+ +g[C+512>>2]+ +g[i>>2]*.30000001192092896,0.0);tf(s,p,y);c[E>>2]=c[s>>2];c[E+4>>2]=c[s+4>>2];fj(E,1,1.0);if(d)D=13;else{Gk(1);o=f;p=0}}if((D|0)==13){o=f;p=kh(C+276|0,G)|0}if(q)c[h>>2]=t;do if((c[r>>2]|0)==1){f=q^1;if(f|e&o^1){if(!o?e|(f|p^1):0){h=0;f=0;D=36;break}h=0;f=1;D=36}else{f=0;e=0;D=37}}else{k=F+6148|0;if((((c[k>>2]|0)==(C|0)?(u=F+6244|0,v=F+6256|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Dj(u,w)|0)+8>>2]|0)==(C|0):0)?(x=c[(Dj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){nl(E,x);h=F+204|0;rf(y,h,F+800|0);i=C+20|0;f=x+20|0;if(+g[i>>2]<+g[f>>2])nq(z,E);else xl(z,E);if(+g[i>>2]<+g[f>>2])ol(A,E);else pl(A,E);n=+g[y>>2];m=+Wh(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[f>>2]?-.5:.5);n=+g[y+4>>2];K=z+4|0;g[K>>2]=n+ +vg(+g[K>>2]-m-n,-100.0);K=A+4|0;g[K>>2]=n+ +yf(m+ +g[K>>2]-n,100.0);h=uf(y,z,A,h)|0}else h=0;if(!(p|e^1)?(c[k>>2]|0)==(C|0):0){f=c[F+6164>>2]|0;f=(h|((f|0)==0|(f|0)==(G|0)))^1}else f=0;D=(e|p^1|h)^1;h=f;f=e|D?D:o&p;D=36}while(0);if((D|0)==36)if(h|d^1)D=37;if((D|0)==37)if(gk(G)|0)hk(c[(c[244]|0)+6256>>2]|0);if(!(e|f^1)?(c[F+6244>>2]|0)>(c[F+6256>>2]|0):0){ek(b);e=0}else{if(f)ek(b);if(e|f){df(E,0.0,0.0);pk(I,1,E);e=jk(G,c[H>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=J;return e|0}function nq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function oq(){lk();return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[244]|0;s=~~(+Qf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Qf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Qf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Qf(+g[b+12>>2])*255.0+.5);Wj(0,1);if(a|0?(j=Yi(a,0)|0,j>>>0>a>>>0):0){on(a,j);qq()}i=+g[k+5932>>2]*3.0+ +g[k+5148>>2]*2.0;df(m,i,i);a=b+12|0;Of(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];rq(8885,n,d&3074|64,p)|0;ch(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;pn(8895,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;pn(8948,y)}_j();l=z;return}function qq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Ii()|0;do if(!(a[k+144>>0]|0)){m=c[244]|0;b=(c[k+316>>2]|0)==1?2:1;if(!(Sp(b)|0))Cb(9676,4833,10564,31354);if(b&2|0){Mq();break}e=k+416|0;if(c[e>>2]|0)Li();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(Nq(k+368|0)|0))d=d+ +g[k+404>>2];b=k+220|0;df(i,d,+g[b>>2]);df(j,f,+g[b>>2]+1.0);lj(h,i,j);df(i,0.0,0.0);bh(i,0.0);if(fh(h,0)|0){k=c[k+596>>2]|0;df(i,+g[h+8>>2],+g[h+4>>2]);Ov(k,h,i,Rf(27,1.0)|0,1.0);if(a[m+10480>>0]|0)$i(0,9771,0);if(c[e>>2]|0){Zp(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)Zp(-1)}while(0);l=n;return}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Ii()|0;if(!(a[y+144>>0]|0)){z=c[244]|0;A=Kg(y,b,0)|0;k=+Om();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+216|0;tf(o,h,f);lj(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5148>>2];dh(B,j);if(fh(B,A)|0){h=hl(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;Of(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+yf(i,m)/2.990000009536743;j=+yf(+g[z+5152>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];Uj(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);df(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Sf(d)|0;df(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];sq(H,G,u,i,o,j,10);H=c[y+596>>2]|0;df(o,m,+g[E+12>>2]);Qv(H,E,o,Sf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Sf(r)|0;df(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];sq(H,G,F,i,o,j,-1)}else{H=c[y+596>>2]|0;Qv(H,E,E+8|0,Sf(r)|0,j,15)}}if(+g[z+5156>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];ej(G,o,j)}else{H=c[y+596>>2]|0;Pv(H,B,B+8|0,Rf(7,1.0)|0,j,15,1.0)}if((c[z+6172>>2]|0)==(A|0)?vq(0,0)|0:0){if(!(f&2))wq(9212,d,16,2)|0;else wq(9205,d,12,2)|0;df(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];rq(b,d,f,o)|0;ch(0.0,-1.0);on(9219,0);xq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))pq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function sq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Ii()|0;a:do if(d>>>0<4278190080){w=Uf(tq(-3355444,d)|0)|0;y=Uf(tq(-8355712,d)|0)|0;v=j+596|0;Qv(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+Wh(k,n,m);k=k+e;r=+yf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;df(C,p,s);df(D,q,r);Qv(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Qv(c[j+596>>2]|0,a,b,d,h,i);while(0);l=E;return}function tq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=Ft(a&255,b&255,c)|0;d=Ft(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(Ft(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function uq(a){a=a|0;var b=0;b=c[244]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(Sp(a&57344)|0))Cb(9014,4833,9859,32530);if(!(Sp(a&196608)|0))Cb(9077,4833,9860,32530);if(Sp(a&786432)|0){c[b+10368>>2]=a;return}else Cb(9142,4833,9861,32530)}function vq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[244]|0;h=c[m+6140>>2]|0;do if(!(b&16)){i=h+272|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6172>>2]|0)!=(f|0):0){e=0;break}if(a[m+212+d>>0]|0){if(e){if(!(b&8))Cb(16777,4833,11253,33071);g=a[h+292>>0]|0;if(g<<24>>24){f=Zg(h,h+276|0)|0;c[i>>2]=f;ah(f);if(a[m+876+d>>0]|0){_g(f,h);Qh(h)}}else{if(!(c[m+6172>>2]|0)){e=0;break}if((c[m+6196>>2]|0)!=(h|0)){e=0;break}f=Zg(h,h+276|0)|0;c[i>>2]=f}e=c[m+6172>>2]|0;if((e|0)==(f|0)){a[m+6186>>0]=g;e=f}else n=17}else{e=c[m+6172>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Vg(h+420|0)|0)>>2]|0;if(Aj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Gf(10093,0,0)|0;n=20}while(0);if((n|0)==20){f=m+6896|0;do if(!(a[f>>0]|0))if(!e)Cb(10107,4833,11291,33071);else{Mh();c[m+6916>>2]=e;c[m+6920>>2]=g;a[f>>0]=1;c[m+6900>>2]=b;c[m+6904>>2]=d;break}while(0);if(!(b&1)){df(j,0.0,0.0);pk(m+204|0,0,j);n=Tf(4)|0;Of(k,1.0,1.0,1.0,.6000000238418579);or(j,n,k);Bk(4,j);Wj(512,1)}if(!(b&18)){a[h+292>>0]=0;e=1}else e=1}l=o;return e|0}function wq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[244]|0;h=i+6908|0;e=(e|0)==0?1:e;if(!a)Cb(10139,4833,11344,33091);if((c8(a)|0)>>>0>=9)Cb(10150,4833,11345,33091);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Cb(10225,4833,11346,33091);if((e+-1|0)>>>0>=2)Cb(10289,4833,11347,33091);if(!(c[i+6916>>2]|0))Cb(10340,4833,11348,33091);if(!((e|0)!=1?(f=i+6924|0,(c[f>>2]|0)!=-1):0)){zf(i+6928|0,a,9);f=i+6976|0;pr(f,0);do if(d>>>0<=8)if(g){g=i+6988|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{pr(f,d);g=c[i+6984>>2]|0;c[h>>2]=g;Zaa(g|0,b|0,d|0)|0}while(0);c[i+6912>>2]=d;f=i+6924|0}h=c[i+6076>>2]|0;c[f>>2]=h;i=c[i+6972>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function xq(){var b=0;b=c[244]|0;if(!(a[b+6896>>0]|0))Cb(10122,4833,11322,33110);if(!(c[b+6900>>2]&1)){_j();Gk(1)}if((c[b+6924>>2]|0)==-1)Mh();return}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return zq(a,b,c|2)|0}function zq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Ii()|0;if(!(a[W+144>>0]|0)){X=c[244]|0;J=+Om();if(!(e&16))k=J+ +g[X+5168>>2];else k=0.0;v=+Kl()-k;L=Yi(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Co();el(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Aq(d,f);if(!(f&57344))f=c[X+10368>>2]&57344|f;if(!(f&196608))f=c[X+10368>>2]&196608|f;K=c[X+10368>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Vf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=kj(h,0,255)|0;h=kj(n,0,255)|0;f=kj(p,0,255)|0;if(S){z=kj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;Ef(D,64,9504,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;Ef(D,64,9522,y)|0}kg(v);do if(lg(9536,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Bq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;y9(f,9543,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;y9(f,9560,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))qk(9225,1)|0;mg();i=0}else{i=0;f=0}else{u=X+5168|0;r=+g[u>>2];o=+(V+-1|0);s=+vg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+vg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;cj(w,t?9350:9358,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;kg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ch(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))kg(o);if(t){f=((Mo(c[980+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1044+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((So(c[980+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[996+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)qk(9225,1)|0}while((m|0)!=(V|0))}mg();mg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ch(0.0,+g[X+5168>>2]);if(S)k=+g[d+12>>2];else k=1.0;Of(F,+g[d>>2],+g[N>>2],+g[P>>2],k);df(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(rq(9573,F,K,D)|0)){G=X+10372|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];ek(9587);ol(H,W+276|0);df(I,-1.0,+g[X+5164>>2]);tf(D,H,I);df(E,0.0,0.0);pk(D,0,E)}if(!(K&8))qk(9225,1)|0;if(mk(9587)|0){h=c[X+6140>>2]|0;if((L|0)!=(b|0)){on(b,L);qq()}kg(J*12.0);f=f|(Cq(9594,d,e&987650|59520,X+10372|0)|0);mg();lk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ch(0.0,+g[X+5168>>2]);on(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Xf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}kl();Do();if((a[W+292>>0]|0)!=0?Dq()|0:0){h=Eq(9205,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=Eq(9212,0)|0;if(h){Zaa(d|0,c[h>>2]|0,V<<2|0)|0;f=1}Fq()}if((!m?(Y=c[X+6172>>2]|0,Y|0):0)?(c[X+6196>>2]|0)==(n|0):0)c[W+272>>2]=Y}else f=0;l=Z;return f|0}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?mk(9225)|0:0){r=(c[244]|0)+10368|0;d=c[r>>2]|0;if(e){n=ep(9233,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=ep(9237,(d&16384|0)!=0)|0;d=n?p|16384:d;p=ep(9241,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)qq();n=ep(9245,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=ep(9252,(d&131072|0)!=0)|0;d=n?p|131072:d}qq();df(q,-1.0,0.0);if(An(9263,q)|0)ek(37851);if(mk(37851)|0){j=+g[a>>2];k=~~(+Qf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Qf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Qf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Qf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;Ef(e,64,9273,s)|0;df(s,0.0,0.0);if(Yp(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;Ef(e,64,9302,v)|0;df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;Ef(e,64,9316,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;Ef(e,64,9331,u)|0}df(v,0.0,0.0);if(Yp(e,0,0,v)|0)th(e);lk()}c[r>>2]=d;lk()}l=w;return}function Bq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[244]|0;k=Ii()|0;wa=c[k+596>>2]|0;el(a);Co();f=d>>>4&16^16|d;if(!(d&8))Hq(f,b);if(!(d&786432)){ka=c[q+10368>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(Sp(f&786432)|0))Cb(9142,4833,10287,32505);if(!(f&8))f=c[q+10368>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+216|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+Om();fa=+Kl();p=q+5168|0;ha=+g[p>>2];fa=+vg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;Zaa(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;df(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);df(ca,n,0.0);i=n*-.5;df(da,i,n*-.8660249710083008);df(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Vf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);D=(f&524288|0)!=0;if(D){df(ma,ea+(fa+ +g[p>>2]),fa);Cn(9603,ma)|0;if(Kj()|0){rf(ma,q+816|0,ba);rf(la,q+204|0,ba);h=+xf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);Iq(ya,ma,h,i);if(uf(ca,da,ga,ya)|0){Iq(ya,la,h,i);if(!(uf(ca,da,ga,ya)|0)){wf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}vf(ca,da,ga,ya,H,na,oa);n=+Wh(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+Wh(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){qk(9225,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){df(ma,fa,fa);Cn(9607,ma)|0;if(Kj()|0){n=fa+-1.0;g[W>>2]=+Qf((+g[q+204>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))qk(9225,1)|0;df(ma,N,+g[V>>2]);an(ma);df(ma,ea,fa);Cn(9610,ma)|0;k=k<<24>>24!=0;if(Kj()|0){g[G>>2]=+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(df(ma,ha,+g[V>>2]),an(ma),df(ma,ea,fa),Cn(9614,ma)|0,Kj()|0):0){g[b+12>>2]=1.0-+Qf((+g[q+208>>2]-+g[V>>2])/(fa+-1.0));d=1}k=(f&256|0)!=0;if(!k){ch(0.0,+g[p>>2]);Co()}m=(f&128|0)!=0;if(!m?(s=Yi(a,0)|0,(s|0)!=(a|0)):0){if(k)ch(0.0,+g[p>>2]);on(a,s)}if(!k){if(t)h=1.0;else h=+g[b+12>>2];Of(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)pn(9620,u);k=f&7232;i=ea*3.0;n=ea*2.0;df(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];rq(9628,la,k,ma)|0;if(e){pn(9638,w);if(t)h=1.0;else h=+g[e+12>>2];Of(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);df(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(rq(9647,ya,k,ma)|0){Zaa(b|0,e|0,ja|0)|0;d=1}}Do()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Xf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){kg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(zq(9658,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(zq(9664,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(zq(9670,b,k|32772)|0);mg();if(e){B=61;break}else{s=0;break}}else{mg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Vf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Xf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Xf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}Of(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Xf(r,1.0,1.0,H,H+4|0,H+8|0);q=Pf(H)|0;Of(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Pf(ma)|0;bf(na);if(!D){if(f&262144|0){df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,-1,q,q,-1);df(la,fa,fa);tf(ma,M,la);Rv(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;df(ya,fa,fa);tf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];ej(la,ma,0.0);i=+g[M>>2];g[na>>2]=+Wh(+(~~(i+fa*+Qf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+Wh(+(~~(i+fa*+Qf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{df(ma,N,h*+(f|0)+i);f=f+1|0;df(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1092+(f<<2)>>2]|0;Rv(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);df(P,N,i);df(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];ej(la,ma,0.0);df(R,N+-1.0,+(~~(i+fa*r+.5)|0));df(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];Lq(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=Zo(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;Iv(wa,ba,i,N,O,o);jj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);df(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);df(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1092+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];iw(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);df(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=kj(~~(U/1.399999976158142),9,32)|0;Xv(wa,ma,U,q,Z);Wv(wa,ma,U+1.0,-8355712,Z,1.0);Wv(wa,ma,U,-1,Z,1.0);Iq(ya,ca,O,T);tf(la,ba,ya);Iq(oa,da,O,T);tf(ya,ba,oa);Iq(_,ga,O,T);tf(oa,ba,_);Tm(_);xv(wa,6,6);Jq(wa,la,_,q);Jq(wa,ya,_,q);Jq(wa,oa,_,-1);Jq(wa,la,_,0);Jq(wa,ya,_,-16777216);Jq(wa,oa,_,0);Uv(wa,la,ya,oa,-8355712,1.5);Kq(aa,oa,la,+Qf(+g[W>>2]));Kq($,aa,ya,+Qf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Xv(wa,na,U,a,12);Wv(wa,na,U+1.0,-8355712,12,1.0);Wv(wa,na,U,-1,12,1.0);if(ka){U=+Qf(+g[b+12>>2]);T=+g[V>>2];al(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Dl(oa)*.5;df(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];sq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Rv(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];ej(la,ma,0.0);df(ua,ha+-1.0,fa);df(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];Lq(wa,la,ma,ea+2.0)}Do();kl();if(s)f=(_7(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function Dq(){var b=0,d=0,e=0,f=0;d=c[244]|0;if((((a[d+6896>>0]|0)!=0?(e=c[d+6140>>2]|0,(a[e+292>>0]|0)!=0):0)?(b=c[d+6148>>2]|0,(b|0)!=0):0)?(c[e+604>>2]|0)==(c[b+604>>2]|0):0){b=c[e+272>>2]|0;if(!b)b=Zg(e,e+276|0)|0;if((c[d+6916>>2]|0)!=(b|0)){f=e+276|0;e=d+6940|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[d+6956>>2]=b;b=1}else b=0}else b=0;return b|0}function Eq(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[244]|0;h=c[k+6140>>2]|0;m=k+6908|0;if(!(a[k+6896>>0]|0))Cb(10122,4833,11436,33148);if((c[k+6924>>2]|0)==-1)Cb(10362,4833,11437,33148);if((b|0)!=0?!(qr(m,b)|0):0)b=0;else{b=k+6956|0;i=(c[k+6968>>2]|0)==(c[b>>2]|0);e=k+6940|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Dl(j);f=f*+$h(j);e=k+6960|0;if(f<+g[e>>2]){c[k+6964>>2]=c[b>>2];g[e>>2]=f}a[k+6937>>0]=i&1;do if(!(((c[k+6900>>2]|d)&2048|0)!=0|i^1)){Uj(j,3.5);o=rr(h+432|0,j)|0;b=h+596|0;e=c[b>>2]|0;if(o){Pv(e,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);break}else{iv(e);o=c[b>>2]|0;Pv(o,j,j+8|0,Rf(42,1.0)|0,0.0,-1,2.0);jv(c[b>>2]|0);break}}while(0);c[k+6972>>2]=c[k+6076>>2];if(i)b=(wj(c[k+6904>>2]|0)|0)^1;else b=0;a[k+6938>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function Fq(){if(!(a[(c[244]|0)+6896>>0]|0))Cb(10122,4833,11477,33170);else return}function Gq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Cq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function Hq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?mk(9225)|0:0){e=c[244]|0;if(m){q=+g[e+5932>>2]*8.0;p=+Om();df(i,q,+vg(q-(p+ +g[e+5168>>2]),1.0));kg(+g[i>>2]);f=e+10368|0;d=0;do{a=(d|0)==1;if(a)qq();fo(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;$m(j);if(Yp(12148,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;an(j);cf(k);Zaa(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Cq(12161,k,a,0)|0;kl();d=d+1|0}while((d|0)!=2);mg()}if(h){if(m)qq();dp(12175,e+10368|0,512)|0}lk()}l=o;return}function Iq(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f*c-e*d,f*d+e*c);return}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Gt(a,c[a+48>>2]&65535);Ht(a,b,d,e);return}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];df(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];df(w,s+1.0,o);r=+g[d+4>>2]+1.0;df(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];It(a,i,h,1,-16777216);df(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];It(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;df(q,e+-1.0,o);df(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];It(a,i,h,0,-16777216);df(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];It(a,i,h,0,-1);l=f;return}function Mq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Ii()|0;if(((a[f+144>>0]|0)==0?(h=c[244]|0,n=+g[f+220>>2],k=n+ +g[f+248>>2],m=f+216|0,df(d,+g[m>>2],n),df(e,+g[m>>2]+1.0,k),lj(b,d,e),df(d,+Dl(b),0.0),bh(d,0.0),fh(b,0)|0):0)?(m=c[f+596>>2]|0,df(d,+g[b>>2],+g[b+4>>2]),df(e,+g[b>>2],+g[b+12>>2]),Ov(m,d,e,Rf(27,1.0)|0,1.0),a[h+10480>>0]|0):0)Zi(9805,i);l=j;return}function Nq(a){a=a|0;return (c[a>>2]|0)==0|0}function Oq(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Ii()|0)+144>>0]|0)){df(b,0.0,0.0);bh(b,0.0)}l=c;return}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=Cg()|0;f=d+216|0;tf(e,f,a);lj(c,f,e);a=lh(d+432|0,c)|0;l=b;return a|0}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(Cg()|0)+432|0;lj(d,a,b);b=lh(e,d)|0;l=c;return b|0}function Rq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Sq(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Ii()|0;if(!(a[d+144>>0]|0)){e=c[244]|0;f=d+316|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+248>>2]>0.0){df(b,0.0,0.0);bh(b,0.0)}else{df(b,0.0,+g[e+5932>>2]);bh(b,0.0)}c[f>>2]=h}l=i;return}function Tq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Ii()|0;if((a[j+144>>0]|0)==0?(b=j+416|0,c[b>>2]|0):0){f=c[244]|0;mg();Li();h=c[b>>2]|0;e=h+40|0;i=j+220|0;g[e>>2]=+vg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Hm(d);e=j+404|0;d=j+412|0;g[d>>2]=k-+g[e>>2]+ +g[f+5160>>2];wv(c[j+596>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+412|0;g[d>>2]=0.0;wv(c[j+596>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+404|0}g[j+216>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+248>>2]=0.0;g[j+252>>2]=0.0;Zp(-1);kg(+Uq(-1)*.6499999761581421)}return}function Uq(a){a=a|0;var b=0,d=0,e=0.0;b=c[(Cg()|0)+416>>2]|0;if(!b)Cb(9839,4833,10924,31715);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(Xq(d,a+1|0)|0)>>2];return +(+Yq(b,e-+g[(Xq(d,a)|0)>>2]))}function Vq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function Wq(){var a=0;a=c[(Cg()|0)+416>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function Xq(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Cb(12740,37262,1030,12749);return 0}function Yq(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function Zq(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[244]|0;e=c[(c[f+6140>>2]|0)+416>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+_q(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+yf(d,+g[e+24>>2]-+g[k+5188>>2]*+((c[e+16>>2]|0)-b|0));l=+$q(e,d-+g[e+20>>2]);g[(Xq(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +vg(+g[k+5188>>2],i);k=c[244]|0;e=c[(c[k+6140>>2]|0)+416>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Cb(9853,4833,10940,31761);else if((b|0)==14)return}while(0);Cb(9839,4833,10936,31761)}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=Xq(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(Xq(h,b)|0)+4|0}else{e=+g[f>>2];b=Xq(h,b)|0}return +(+Yq(a,e-+g[b>>2]))}function $q(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function ar(a,b){a=a|0;b=+b;var d=0;d=c[(Cg()|0)+416>>2]|0;if(!d)Cb(9839,4833,10957,31730);if((a|0)<0)a=c[d+12>>2]|0;Zq(a+1|0,+Hm(a)+b);return}function br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0.0;u=l;l=l+32|0;s=u;i=c[244]|0;t=Ii()|0;if((d|0)<=1)Cb(9890,4833,10991,9908);h=t+416|0;if(c[h>>2]|0)Cb(9921,4833,10992,9908);r=(b|0)!=0;fo(r?287454023:d+287454023|0);r=Kg(t,r?b:9949,0)|0;kl();p=cr(t,r)|0;if((c[p>>2]|0)!=(r|0))Cb(9957,4833,11002,9908);c[p+12>>2]=0;q=p+16|0;c[q>>2]=d;r=p+4|0;c[r>>2]=e;c[h>>2]=p;f=+g[t+60>>2];if(!(f!=0.0))f=+g[t+28>>2]-+g[t+132>>2];v=+g[t+404>>2];n=p+20|0;g[n>>2]=v-+g[i+5160>>2];o=p+24|0;g[o>>2]=f-+g[t+104>>2];j=c[t+220>>2]|0;c[p+28>>2]=j;c[p+32>>2]=c[t+240>>2];c[p+40>>2]=j;c[p+36>>2]=j;g[t+412>>2]=0.0;j=t+20|0;g[t+216>>2]=+(~~(+g[j>>2]+v+0.0)|0);k=p+44|0;h=(c[k>>2]|0)==0;a[p+8>>0]=h&1;m=d+1|0;if(h){dr(k,m);f=+(d|0);b=0;do{er(s);g[s>>2]=+(b|0)/f;fr(k,s);b=b+1|0}while((b|0)!=(m|0))}if((c[k>>2]|0)!=(m|0))Cb(9975,4833,11031,9908);if((d|0)>=0){h=i+5188|0;i=t+432|0;b=0;do{e=Xq(k,b)|0;f=+g[e>>2];if(!(c[r>>2]&8))f=+yf(f,+$q(p,+g[o>>2]-+g[n>>2]-+g[h>>2]*+((c[q>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[j>>2]+.5;f=+hf(f+ +Hm(b)+-1.0);v=+g[j>>2]+.5;b=b+1|0;al(s,f,-3402823466385288598117041.0e14,+hf(v+ +Hm(b)+-1.0),3402823466385288598117041.0e14);e=e+12|0;c[e>>2]=c[s>>2];c[e+4>>2]=c[s+4>>2];c[e+8>>2]=c[s+8>>2];c[e+12>>2]=c[s+12>>2];mj(e,i)}}while((b|0)!=(m|0))}pv(c[t+596>>2]|0,c[q>>2]|0);Zp(-1);kg(+Uq(-1)*.6499999761581421);l=u;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+580|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Jt(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Jt(d,a)|0}else f=5;while(0);if((f|0)==5){Lt(e);Kt(d,e);Mt(e);a=Nt(d)|0;c[a>>2]=b}l=g;return a|0}function dr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function er(a){a=a|0;Eg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function fr(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dr(a,Bu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function gr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[244]|0;f=c[e+6140>>2]|0;if((b|0)<=0)Cb(12185,4833,10871,12202);if((c[e+6172>>2]|0)!=((c[a>>2]|0)+b|0))Cb(12225,4833,10872,12202);h=+g[e+204>>2]-+g[e+6188>>2]+4.0-+g[f+20>>2];d=+Hm(b+-1|0);e=e+5188|0;d=+vg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Hm(b+1|0);d=+yf(d,h-+g[e>>2])}return +d}function hr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Ii()|0;if((a|0)<=0)Cb(10029,4833,11128,31681);e=c[e+416>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)zl();if((a|0)!=1)br(b,a,(d^1)&1);return}function ir(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;el(a|0?a:10048);return}function jr(a){a=a|0;var b=0;b=Ii()|0;Up(0.0);b=b+268|0;c[b>>2]=(c[b>>2]|0)+1;Gn(a|0?a:10048);return}function kr(){var a=0;a=Ii()|0;Wp(0.0);a=a+268|0;c[a>>2]=(c[a>>2]|0)+-1;kl();return}function lr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10065:10070;pn(10058,e);l=d;return}function mr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;pn(10084,i)}else{c[f>>2]=d;Ef(e,64,10076,f)|0;c[g>>2]=a;h[g+8>>3]=b;pn(e,g)}l=j;return}function nr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;a[d+8>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+30>>0]=0;a[b+29>>0]=0;return}function or(a,b,c){a=a|0;b=b|0;c=c|0;Of(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function pr(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))bu(a,cu(a,b)|0);c[a>>2]=b;return}function qr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(S8(b,a+20|0)|0)==0;return a|0}function rr(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<+g[a+8>>2]:0)a=+g[b+12>>2]<+g[a+12>>2];else a=0;return a|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=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.0;t=l;l=l+144|0;s=t+136|0;r=t+128|0;q=t+112|0;p=t+96|0;o=t+88|0;n=t+80|0;k=t+64|0;j=t+56|0;i=t+48|0;e=t+40|0;f=t+24|0;d=t+8|0;b=t;if(hi(10391,a,0)|0){c[b>>2]=30079;pn(10405,b);u=+g[(zh()|0)+776>>2];h[d>>3]=1.0e3/u;h[d+8>>3]=u;pn(10414,d);d=zh()|0;m=c[d+788>>2]|0;c[f>>2]=c[d+784>>2];c[f+4>>2]=m;c[f+8>>2]=(m|0)/3|0;pn(10459,f);c[e>>2]=c[(zh()|0)+780>>2];pn(10498,e);cp(10514,10513)|0;qq();m=c[244]|0;tr(m+6088|0,10566);e=m+6372|0;c[i>>2]=c[e>>2];if(_n(10574,10583,i)|0){b=0;do{d=m+6372+(b*12|0)|0;if((c[d>>2]|0)>0){a=0;do{ur(c[(Vi(e,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[d>>2]|0))}b=b+1|0}while((b|0)!=3);kr()}i=m+6244|0;c[j>>2]=c[i>>2];if(_n(10605,10612,j)|0){if((c[i>>2]|0)>0){e=0;do{a=c[(Dj(i,e)|0)+4>>2]|0;f=c[(Dj(i,e)|0)>>2]|0;if(!a){a=10667;b=58608;d=58608}else{d=c[a+8>>2]|0;a=c[a>>2]|0;b=d&16777216|0?10672:58608;d=d&268435456|0?10685:58608}c[k>>2]=f;c[k+4>>2]=a;c[k+8>>2]=b;c[k+12>>2]=d;lo(10635,k);e=e+1|0}while((e|0)<(c[i>>2]|0))}kr()}if(ao(10696)|0){a=c[m+6148>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[n>>2]=a;pn(10708,n);a=c[m+6152>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[o>>2]=a;pn(10728,o);a=c[m+6164>>2]|0;u=+g[m+6168>>2];c[p>>2]=c[m+6156>>2];c[p+4>>2]=a;h[p+8>>3]=u;pn(10752,p);a=c[m+6176>>2]|0;u=+g[m+6180>>2];c[q>>2]=c[m+6172>>2];c[q+4>>2]=a;h[q+8>>3]=u;pn(10788,q);a=c[m+6196>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[r>>2]=a;pn(10823,r);a=c[m+6144>>2]|0;if(!a)a=10667;else a=c[a>>2]|0;c[s>>2]=a;pn(10844,s);kr()}}Ni();l=t;return}function tr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(_n(b,12275,e)|0){if((c[a>>2]|0)>0){b=0;do{Vt(c[(bi(a,b)|0)>>2]|0,5983);b=b+1|0}while((b|0)<(c[a>>2]|0))}kr()}l=d;return}function ur(b){b=b|0;var d=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;d=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[b+44>>2]|0;D=b+24|0;x=c[D>>2]|0;z=b+12|0;y=c[z>>2]|0;f=c[b>>2]|0;c[E>>2]=10574;c[E+4>>2]=(w|0)==0?58608:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=f;f=$n(b,12466,E)|0;if((Qm()|0)==(b|0)){ch(0.0,-1.0);Wt(d,255,100,100,255);Xt(E,d);rn(E,12503,I+24|0);if(f)kr()}else if(f){d=c[244]|0;t=d+6412|0;f=Yt(b)|0;if(f>>>0<(Zt(b)|0)>>>0){u=b+20|0;v=E+16|0;w=E+20|0;x=B+24|0;y=A+300|0;q=d+6448|0;r=E+8|0;s=A+8|0;p=0;while(1){d=c[f+24>>2]|0;if(!d){if(c[f>>2]|0){if((c[z>>2]|0)>0)o=c[u>>2]|0;else o=0;k=f-(Yt(b)|0)>>5;m=(c[z>>2]|0)>0?12614:12622;n=c[f+20>>2]|0;d=f+4|0;M=+g[d>>2];L=+g[f+8>>2];K=+g[f+12>>2];J=+g[f+16>>2];c[F>>2]=c[f>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=$n(k,12549,F)|0;if(a[10513]|0?ih(0)|0:0){Ki(E,d);Eg(A);if((c[f>>2]|0)>0){i=(o|0)==0;d=p;do{if(i)j=d;else j=e[o+(d<<1)>>1]|0;_t(A,$t(D,j)|0);d=d+1|0}while((d|0)<((c[f>>2]|0)+p|0))}au(E);Pv(t,E,r,-16711681,0.0,15,1.0);au(A);Pv(t,A,s,-65281,0.0,15,1.0)}if(k){dq(E,((c[f>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(Bg(E)|0))break;d=c[v>>2]|0;if((d|0)>=(c[w>>2]|0))continue;m=(d*3|0)+p|0;while(1){i=B;do{bf(i);i=i+8|0}while((i|0)!=(x|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=$t(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?12697:12701;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(Ef(k,y-k|0,12634,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}df(C,0.0,0.0);Yp(A,0,0,C)|0;if(ih(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;Av(t,B,3,-16711681,1,1.0);c[q>>2]=P}d=d+1|0;if((d|0)>=(c[w>>2]|0))continue a}}kr();eq(E)}}}else{P=c[f+28>>2]|0;c[H>>2]=d;c[H+4>>2]=P;lo(12523,H)}p=(c[f>>2]|0)+p|0;f=f+32|0;if(f>>>0>=(Zt(b)|0)>>>0)break}}kr()}l=I;return}function vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function yr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ar(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Br(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Cr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Dr(a){a=a|0;var b=0,c=0;bf(a+4|0);bf(a+12|0);b=a+36|0;c=a+20|0;do{bf(c);c=c+8|0}while((c|0)!=(b|0));c=a+52|0;b=a+36|0;do{bf(b);b=b+8|0}while((b|0)!=(c|0));return}function Er(a){a=a|0;nr(a);return}function Fr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gr(a){a=a|0;Vr(a+4|0);Hr(a+16|0);Hr(a+28|0);$aa(a|0,0,3284)|0;return}function Hr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ir(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Jr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Kr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Lr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Mr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Nr(a){a=a|0;Mr(a+28|0);Mr(a+16|0);Wr(a+4|0);return}function Or(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Pr(a){a=a|0;Uu(a);Xr(a+104|0);Yr(a+84|0);Zr(a+72|0);_r(a+60|0);$r(a+24|0);Wr(a+12|0);as(a);return}function Qr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Rr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Sr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Tr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Ur(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Xr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function as(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function bs(a){a=a|0;return c[a+8>>2]|0}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function gs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function hs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ks(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ls(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ms(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ns(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function os(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)_f(a);return}function qs(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){og(b,rs(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function rs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ss(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[244]|0)+10456|0;us(e);ts(b,e);b=vs(b)|0;c[b>>2]=Af(a)|0;c[b+4>>2]=Gf(a,0,0)|0;l=d;return b|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ws(b,xs(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function us(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;bf(e);h=b+16|0;bf(h);c[b>>2]=0;c[b+4>>2]=0;df(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function vs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Cb(37253,37262,1040,13011);return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function xs(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function ys(a,b){a=a|0;b=b|0;og(a,b);return}function zs(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;_f(d);c[b>>2]=0}return}function As(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=Af(b)|0;g=c8(h)|0;i=h+g|0;j=c[244]|0;if((g|0)>0){d=0;b=h;e=0;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=Cf(b,k,93)|0;if((d|0)!=0?(l=Cf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=5983}d=Fi(Gf(b,0,0)|0)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Gd[c[d+8>>2]&63](j,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ue[c[d+12>>2]&63](j,e,g)}b=b+1|0}while(b>>>0>>0)}_f(h);return}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0,h=0;h=l;l=l+16|0;d=h;e=c[244]|0;g[e+10452>>2]=0.0;ii(d);f=e+10468|0;if((c[f>>2]|0)>0){b=0;do{oe[c[(Gi(f,b)|0)+16>>2]&127](e,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}Cs(d);Ds(a,d);Es(d);l=h;return}function Cs(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ds(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function Es(a){a=a|0;Mr(a);return}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+148>>2]|0)-(c[e+148>>2]|0)|0}return a|0}function Gs(b,d){b=b|0;d=d|0;var e=0,f=0;Xi(b,c[d+596>>2]|0);e=d+300|0;if((c[e>>2]|0)>0){d=0;do{f=c[(bi(e,d)|0)>>2]|0;do if(a[f+140>>0]|0){if(c[f+8>>2]&67108864|0?(c[f+184>>2]|0)>0:0)break;Gs(b,f)}while(0);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function Hs(a){a=a|0;return (c[a>>2]|0)==0|0}function Is(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Cb(37253,37262,1040,13011);return 0}function Js(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Cb(37253,37262,1061,12905)}function Ks(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ls(a,Ms(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ms(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Os(a,Ps(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=Bf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{Zaa(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}_f(d);c[a>>2]=g;c[f>>2]=b}return}function Ps(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Qs(a){a=a|0;Rs(a+84|0,0);return}function Rs(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Os(a,Ps(a,b)|0);c[a>>2]=b;return}function Ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){Oi(a,Ts(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;_aa(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Cb(11501,37262,1065,11531);return 0}function Ts(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Us(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+Wh(+g[b>>2],+g[c>>2],+g[d>>2]);df(a,e,+Wh(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Vs(a){a=a|0;bf(a+4|0);bf(a+12|0);bf(a+20|0);return}function Ws(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Xs(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function Ys(b){b=b|0;var d=0,e=0,f=0;d=c[(c[244]|0)+6140>>2]|0;c[b>>2]=c[d+272>>2];f=d+276|0;e=b+4|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];a[b+20>>0]=a[d+292>>0]|0;return}function Zs(a){a=a|0;return ((a|0)>65535?0:a)|0}function _s(a){a=a|0;return c[a+44>>2]|0}function $s(a,c,d){a=a|0;c=c|0;d=d|0;c=rt(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=qt(a,d)|0;return}function at(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Lf(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function bt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Cb(12072,4833,8258,12088);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Lf(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))_aa(a+(f<<1)|0,a|0,g-d<<1|0)|0;Zaa(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(vt(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function ct(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;it(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){pt(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{pt(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function dt(a,b,c){a=a|0;b=b|0;c=c|0;rt(a+24|0,b,0,c)|0;return}function et(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{wt(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=qt(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;at(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;bt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function ft(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=qt(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}at(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;bt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function gt(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){xt(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){xt(d);it(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function it(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=_s(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function jt(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function kt(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(yt(a,b)|0));return ((b|0)>0?b:0)|0}function lt(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(yt(a,b)|0));return ((b|0)>(d|0)?d:b)|0} -function VR(a){a=a|0;return YR()|0}function WR(){return 35466}function XR(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;YG(g,b);YG(h,c);YG(i,d);YG(j,e);Ae[a&15](g,h,i,j);IG(j);IG(i);IG(h);IG(g);l=f;return}function YR(){return 2784}function ZR(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(FJ(d)|0)?!(OF(d)|0):0){if((a[42632]|0)==0?Haa(42632)|0:0)aH(58008,d);if((a[42640]|0)==0?Haa(42640)|0:0)aH(58012,e);uH(f,b);uH(g,c);Dm(f,g,$R(68)|0,0)}else{uH(f,b);uH(g,c);Dm(f,g,0,0)}l=h;return}function _R(a){a=a|0;aS(a);return}function $R(a){a=a|0;return a|0}function aS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bS(d,f);cN(d,35041,58012);dN(e,58008,d);IG(e);IG(d);l=b;return}function bS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cS(e,b);b=dS()|0;c[a>>2]=pc(b|0,eS(e)|0)|0;l=d;return}function cS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hS(e,gS(c[b>>2]|0)|0);eG(e);l=d;return}function dS(){return fS()|0}function eS(a){a=a|0;return a|0}function fS(){return 224}function gS(a){a=a|0;return a|0}function hS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iS(a){a=a|0;return 3}function jS(a){a=a|0;return lS()|0}function kS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;YG(e,b);c=WG(c)|0;oe[a&127](e,c);IG(e);l=d;return}function lS(){return 2804}function mS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);gi(d,b);l=c;return}function nS(a){a=a|0;return 4}function oS(a){a=a|0;return qS()|0}function pS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);c=WG(c)|0;YG(g,d);ue[a&63](f,c,g);IG(g);IG(f);l=e;return}function qS(){return 2816}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,c);pk(f,b,e);l=d;return}function sS(a){a=a|0;return 2}function tS(a){a=a|0;return wS()|0}function uS(){return 35542}function vS(a,b){a=a|0;b=+b;b=+XG(b);fe[a&15](b);return}function wS(){return 2832}function xS(a){a=a|0;return 1}function yS(a){a=a|0;return rH(Bd[a&31]()|0)|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;zk(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function AS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function BS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Qm()|0;tJ(a,d);l=b;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Km(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function ES(a){a=a|0;return 1}function FS(){return 35546}function GS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+xd[a&31]();b=+kH(d);l=c;return +b}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Ol(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IS(a){a=a|0;return 2}function JS(a){a=a|0;return LS()|0}function KS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;YG(d,b);oe[a&127](e,d);b=HG(e)|0;IG(e);IG(d);l=c;return b|0}function LS(){return 2840}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function NS(a){a=a|0;return 5}function OS(a){a=a|0;return QS()|0}function PS(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;f=l;l=l+16|0;g=f+4|0;h=f;YG(g,b);YG(h,c);d=FH(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);IG(g);l=f;return e|0}function QS(){return 2848}function RS(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;iL(g,b);eH(h,34972);j=jL(g,h)|0;IG(h);IG(g);if(j){kG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;uH(h,d);b=vk(j<<24>>24<0?b:g,h,e,f)|0;T9(g)}else{b=WO(b)|0;uH(g,d);b=xk(b,g,e,f)|0}l=i;return b|0}function SS(a){a=a|0;return 4}function TS(a){a=a|0;return VS()|0}function US(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function VS(){return 2868}function WS(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,0,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=hi(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function XS(a){a=a|0;return 2}function YS(a){a=a|0;return _S()|0}function ZS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);je[a&127](d);T9(d);l=c;return}function _S(){return 2884}function $S(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(OF(b)|0)){a[c>>0]=a[d>>0]|0;aT(b,c)|0}l=d;return}function aT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(bT(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=cT(f)|0;TF(e);l=d;return b|0}function bT(a){a=a|0;return eT()|0}function cT(a){a=+a;return TJ(dT(a)|0)|0}function dT(a){a=+a;return ~~a>>>0|0}function eT(){return 2892}function fT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(OF(b)|0)sr(0);else{c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;sr(d);c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return jT()|0}function iT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);je[a&127](d);IG(d);l=c;return}function jT(){return 2896}function kT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(OF(b)|0)){c[f>>2]=0;AK(e,b,f);h=BK(e)|0;IG(e);a[d>>0]=h&1;c[e>>2]=0;CK(f,d);cI(b,e,f);IG(f)}l=g;return}function lT(){Ri();return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;return qT()|0}function oT(){return 35549}function pT(a){a=a|0;ee[a&63]();return}function qT(){return 2904}function rT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bh()|0;sT(a,d);l=b;return}function sT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;tT(e,b);b=uT()|0;c[a>>2]=pc(b|0,vT(e)|0)|0;l=d;return}function tT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;yT(e,xT(c[b>>2]|0)|0);eG(e);l=d;return}function uT(){return wT()|0}function vT(a){a=a|0;return a|0}function wT(){return 248}function xT(a){a=a|0;return a|0}function yT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function zT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ah()|0;AT(a,d);l=b;return}function AT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BT(e,b);b=CT()|0;c[a>>2]=pc(b|0,DT(e)|0)|0;l=d;return}function BT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GT(e,FT(c[b>>2]|0)|0);eG(e);l=d;return}function CT(){return ET()|0}function DT(a){a=a|0;return a|0}function ET(){return 136}function FT(a){a=a|0;return a|0}function GT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HT(a){a=a|0;return 1}function IT(a){a=a|0;return rR()|0}function JT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[58609]|0)){a[58609]=1;c[(zh()|0)+16>>2]=0;c[(zh()|0)+20>>2]=0}c[d>>2]=zh()|0;KT(b,d);l=e;return}function KT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;LT(e,b);b=MT()|0;c[a>>2]=pc(b|0,NT(e)|0)|0;l=d;return}function LT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;QT(e,PT(c[b>>2]|0)|0);eG(e);l=d;return}function MT(){return OT()|0}function NT(a){a=a|0;return a|0}function OT(){return 272}function PT(a){a=a|0;return a|0}function QT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function RT(a){a=a|0;return a|0}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 920}function VT(){return XT()|0}function WT(a){a=a|0;return a|0}function XT(){return 32}function YT(a){a=a|0;fG(a,1);return}function ZT(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;_T();g=$T()|0;d=aU()|0;n=bU()|0;m=cU()|0;k=dU()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,26,h|0,g|0,f|0,d|0,35598,oT()|0,69);d=bU()|0;f=iU(b)|0;g=bT(b)|0;Tb(d|0,f|0,g|0,rG()|0,27,16);c[b>>2]=0;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35609,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(42)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35615,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=12;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35632,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=16;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35647,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(43)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35664,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(44)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35681,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=36;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35701,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=40;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35715,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=44;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35731,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=48;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35745,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(45)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35761,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=60;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,35777,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=64;g=bU()|0;f=lU()|0;d=iQ()|0;h=mU(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,35791,f|0,d|0,4,h|0,i|0,j|0,2,mU(b)|0);c[b>>2]=qU(46)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35807,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(47)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35822,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(48)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35842,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=92;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35863,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=96;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35877,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=100;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35895,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=104;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35909,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=108;d=bU()|0;h=lU()|0;i=iQ()|0;j=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,35927,h|0,i|0,4,j|0,f|0,g|0,2,mU(b)|0);c[b>>2]=112;g=bU()|0;f=lU()|0;j=iQ()|0;i=mU(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,35939,f|0,j|0,4,i|0,h|0,d|0,2,mU(b)|0);c[b>>2]=qU(49)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35952,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=qU(50)|0;j=bU()|0;i=rU(e)|0;h=sU(e)|0;d=EG()|0;Ub(j|0,35971,i|0,h|0,d|0,29,tU(b)|0,0);c[b>>2]=qU(51)|0;d=bU()|0;h=rU(e)|0;i=sU(e)|0;j=EG()|0;Ub(d|0,35995,h|0,i|0,j|0,29,tU(b)|0,0);c[b>>2]=140;j=bU()|0;i=EU()|0;h=EG()|0;d=FU(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36021,i|0,h|0,30,d|0,f|0,g|0,16,FU(b)|0);c[b>>2]=141;g=bU()|0;f=EU()|0;d=EG()|0;h=FU(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36038,f|0,d|0,30,h|0,i|0,j|0,16,FU(b)|0);c[b>>2]=144;j=bU()|0;i=lU()|0;h=iQ()|0;d=mU(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36054,i|0,h|0,4,d|0,f|0,g|0,2,mU(b)|0);c[b>>2]=JU(17)|0;g=bU()|0;f=KU(e)|0;d=LU(e)|0;h=VH()|0;Ub(g|0,36075,f|0,d|0,h|0,36,MU(b)|0,0);c[b>>2]=PU(37)|0;h=bU()|0;d=QU(e)|0;f=RU(e)|0;g=DH()|0;Ub(h|0,36087,d|0,f|0,g|0,18,SU(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=bU()|0;f=UU(e)|0;e=VU(e)|0;d=dQ()|0;Ub(g|0,36099,f|0,e|0,d|0,3,WU(b)|0,0);l=a;return}function _T(){return}function $T(){return 0}function aU(){return 0}function bU(){return FV()|0}function cU(){return EV()|0}function dU(){return DV()|0}function eU(){return 0}function fU(){return 36131}function gU(a){a=a|0;return CV(a)|0}function hU(a){a=a|0;if(a|0)Q9(a);return}function iU(a){a=a|0;return 1}function jU(a){a=a|0;return FT(Bd[a&31]()|0)|0}function kU(){var a=0;a=P9(836)|0;af(a);return a|0}function lU(){return BV()|0}function mU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function nU(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function oU(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function pU(a,b){a=a|0;b=b|0;AV(a,b);return}function qU(a){a=a|0;return a|0}function rU(a){a=a|0;return 2}function sU(a){a=a|0;return zV()|0}function tU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function uU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=TJ(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function vU(a,b){a=a|0;b=b|0;yV(a,b);return}function wU(a,b){a=a|0;b=b|0;xV(a,b);return}function xU(a,b){a=a|0;b=b|0;wV(a,b);return}function yU(a,b){a=a|0;b=b|0;vV(a,b);return}function zU(a,b){a=a|0;b=b|0;uV(a,b);return}function AU(a,b){a=a|0;b=b|0;tV(a,b);return}function BU(a,b){a=a|0;b=b|0;sV(a,b);return}function CU(a,b){a=a|0;b=b|0;rV(a,b);return}function DU(a,b){a=a|0;b=b|0;jV(a,b);return}function EU(){return iV()|0}function FU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function GU(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function HU(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function IU(a,b,c){a=a|0;b=b|0;c=c|0;aV(a,b,c);return}function JU(a){a=a|0;return a|0}function KU(a){a=a|0;return 3}function LU(a){a=a|0;return $U()|0}function MU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NU(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;ue[a&63](f,b,d);d=HG(f)|0;IG(f);l=e;return d|0}function OU(a,b,c){a=a|0;b=b|0;c=c|0;return _U(a,b,c)|0}function PU(a){a=a|0;return a|0}function QU(a){a=a|0;return 4}function RU(a){a=a|0;return ZU()|0}function SU(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function TU(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=TJ(b)|0;d=WG(d)|0;YG(g,e);e=rH(Od[a&63](b,d,g)|0)|0;IG(g);l=f;return e|0}function UU(a){a=a|0;return 3}function VU(a){a=a|0;return YU()|0}function WU(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function XU(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=TJ(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+XG(d);ke[b&7](a,d);return}function YU(){return 2908}function ZU(){return 2920}function _U(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<43){a=a+148+(b<<4)|0;IL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function $U(){return 2936}function aV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+148+(d<<4);if(d>>>0<43)bV(a,e);else YT(a);l=f;return}function bV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;cV(e,b);b=dV()|0;c[a>>2]=pc(b|0,eV(e)|0)|0;l=d;return}function cV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hV(e,gV(c[b>>2]|0)|0);eG(e);l=d;return}function dV(){return fV()|0}function eV(a){a=a|0;return a|0}function fV(){return 296}function gV(a){a=a|0;return a|0}function hV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iV(){return 864}function jV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;kV(a,e);l=d;return}function kV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lV(e,b);b=mV()|0;c[a>>2]=pc(b|0,nV(e)|0)|0;l=d;return}function lV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qV(e,pV(c[b>>2]|0)|0);eG(e);l=d;return}function mV(){return oV()|0}function nV(a){a=a|0;return a|0}function oV(){return 312}function pV(a){a=a|0;return a|0}function qV(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;kV(a,e);l=d;return}function sV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;kV(a,e);l=d;return}function tV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;kV(a,e);l=d;return}function uV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;kV(a,e);l=d;return}function vV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;kV(a,e);l=d;return}function wV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;kV(a,e);l=d;return}function xV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;kV(a,e);l=d;return}function yV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;kV(a,e);l=d;return}function zV(){return 2948}function AV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;kV(a,e);l=d;return}function BV(){return 944}function CV(a){a=a|0;return 152}function DV(){return 328}function EV(){return 136}function FV(){return 152}function GV(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;HV();h=IV()|0;f=JV()|0;n=KV()|0;m=LV()|0;k=MV()|0;i=eU()|0;j=rG()|0;d=fU()|0;g=fU()|0;Sb(n|0,m|0,k|0,i|0,j|0,28,d|0,h|0,g|0,f|0,36148,oT()|0,70);c[b>>2]=QV(52)|0;f=KV()|0;g=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(f|0,36156,g|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=8;d=KV()|0;h=lU()|0;g=iQ()|0;f=VV(b)|0;j=lU()|0;i=dQ()|0;Vb(d|0,36171,h|0,g|0,5,f|0,j|0,i|0,4,VV(b)|0);c[b>>2]=ZV(32)|0;i=KV()|0;j=_V(e)|0;f=$V(e)|0;g=VH()|0;Ub(i|0,36181,j|0,f|0,g|0,38,aW(b)|0,0);c[b>>2]=dW(39)|0;g=KV()|0;f=eW(e)|0;j=fW(e)|0;i=DH()|0;Ub(g|0,36193,f|0,j|0,i|0,19,gW(b)|0,0);c[b>>2]=QV(53)|0;i=KV()|0;j=RV(e)|0;f=SV(e)|0;g=EG()|0;Ub(i|0,36205,j|0,f|0,g|0,31,TV(b)|0,0);c[b>>2]=128;g=KV()|0;f=lU()|0;j=iQ()|0;i=VV(b)|0;h=lU()|0;d=dQ()|0;Vb(g|0,36214,f|0,j|0,5,i|0,h|0,d|0,4,VV(b)|0);c[b>>2]=QV(54)|0;d=KV()|0;h=RV(e)|0;i=SV(e)|0;j=EG()|0;Ub(d|0,36230,h|0,i|0,j|0,31,TV(b)|0,0);c[b>>2]=QV(55)|0;j=KV()|0;i=RV(e)|0;h=SV(e)|0;d=EG()|0;Ub(j|0,36257,i|0,h|0,d|0,31,TV(b)|0,0);c[b>>2]=mW(33)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36269,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(41)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36284,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=216;d=KV()|0;h=lU()|0;i=iQ()|0;j=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(d|0,36299,h|0,i|0,5,j|0,f|0,g|0,4,VV(b)|0);c[b>>2]=220;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36310,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=221;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36326,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=222;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36334,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=223;d=KV()|0;h=EU()|0;i=EG()|0;j=xW(b)|0;f=EU()|0;g=eL()|0;Vb(d|0,36343,h|0,i|0,34,j|0,f|0,g|0,18,xW(b)|0);c[b>>2]=224;g=KV()|0;f=EU()|0;j=EG()|0;i=xW(b)|0;h=EU()|0;d=eL()|0;Vb(g|0,36350,f|0,j|0,34,i|0,h|0,d|0,18,xW(b)|0);c[b>>2]=mW(35)|0;d=KV()|0;h=nW(e)|0;i=oW(e)|0;j=VH()|0;Ub(d|0,36359,h|0,i|0,j|0,40,pW(b)|0,0);c[b>>2]=sW(42)|0;j=KV()|0;i=tW(e)|0;h=uW(e)|0;d=DH()|0;Ub(j|0,36373,i|0,h|0,d|0,20,vW(b)|0,0);c[b>>2]=56;c[b+4>>2]=0;d=KV()|0;h=CW(e)|0;i=DW(e)|0;j=eL()|0;Ub(d|0,36387,h|0,i|0,j|0,19,EW(b)|0,0);c[b>>2]=772;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36405,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=773;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36422,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=774;j=KV()|0;i=EU()|0;h=EG()|0;d=xW(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,36442,i|0,h|0,34,d|0,f|0,g|0,18,xW(b)|0);c[b>>2]=775;g=KV()|0;f=EU()|0;d=EG()|0;h=xW(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36456,f|0,d|0,34,h|0,i|0,j|0,18,xW(b)|0);c[b>>2]=776;j=KV()|0;i=lU()|0;h=iQ()|0;d=VV(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,36470,i|0,h|0,5,d|0,f|0,g|0,4,VV(b)|0);c[b>>2]=QV(57)|0;g=KV()|0;f=RV(e)|0;d=SV(e)|0;h=EG()|0;Ub(g|0,36480,f|0,d|0,h|0,31,TV(b)|0,0);c[b>>2]=IW(6)|0;h=KV()|0;d=JW(e)|0;f=KW(e)|0;g=LW()|0;Ub(h|0,36494,d|0,f|0,g|0,1,MW(b)|0,0);c[b>>2]=IW(7)|0;g=KV()|0;f=JW(e)|0;e=KW(e)|0;d=LW()|0;Ub(g|0,36517,f|0,e|0,d|0,1,MW(b)|0,0);l=a;return}function HV(){return}function IV(){return 0}function JV(){return 0}function KV(){return uX()|0}function LV(){return tX()|0}function MV(){return sX()|0}function NV(a){a=a|0;return rX(a)|0}function OV(a){a=a|0;if(a|0)Q9(a);return}function PV(a,b){a=a|0;b=b|0;qX(a,b);return}function QV(a){a=a|0;return a|0}function RV(a){a=a|0;return 2}function SV(a){a=a|0;return pX()|0}function TV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function UV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=UW(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function VV(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function WV(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function XV(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function YV(a,b){a=a|0;b=b|0;return oX(a,b)|0}function ZV(a){a=a|0;return a|0}function _V(a){a=a|0;return 3}function $V(a){a=a|0;return nX()|0}function aW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function bW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;c[f>>2]=Gd[a&63](b,d)|0;d=RH(f)|0;l=e;return d|0}function cW(a,b,c){a=a|0;b=b|0;c=c|0;return mX(a,b,c)|0}function dW(a){a=a|0;return a|0}function eW(a){a=a|0;return 4}function fW(a){a=a|0;return lX()|0}function gW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function hW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=WG(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function iW(a,b){a=a|0;b=b|0;dX(a,b);return}function jW(a,b){a=a|0;b=b|0;cX(a,b);return}function kW(a,b){a=a|0;b=b|0;bX(a,b);return}function lW(a,b){a=a|0;b=b|0;return aX(a,b)|0}function mW(a){a=a|0;return a|0}function nW(a){a=a|0;return 3}function oW(a){a=a|0;return $W()|0}function pW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function qW(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;return rH(Gd[a&63](b,d)|0)|0}function rW(a,b,c){a=a|0;b=b|0;c=c|0;return _W(a,b,c)|0}function sW(a){a=a|0;return a|0}function tW(a){a=a|0;return 4}function uW(a){a=a|0;return ZW()|0}function vW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function wW(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=UW(b)|0;d=WG(d)|0;e=FH(e)|0;return rH(Od[a&63](b,d,e)|0)|0}function xW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function yW(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function zW(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function AW(a,b){a=a|0;b=b|0;return YW(a,b)|0}function BW(a,b,c){a=a|0;b=b|0;c=c|0;return XW(a,b,c)|0}function CW(a){a=a|0;return 3}function DW(a){a=a|0;return WW()|0}function EW(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function FW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=UW(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=VW(d)|0;oe[b&127](a,f);return}function GW(a,b){a=a|0;b=b|0;TW(a,b);return}function HW(a,b){a=a|0;b=b|0;return +(+SW(a,b))}function IW(a){a=a|0;return a|0}function JW(a){a=a|0;return 3}function KW(a){a=a|0;return RW()|0}function LW(){return 36539}function MW(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function NW(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=QW(b)|0;d=WG(d)|0;g[h>>2]=+zd[a&15](b,d);e=+kH(h);l=f;return +e}function OW(a,b){a=a|0;b=b|0;return +(+PW(a,b))}function PW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+992+(b<<2)>>2];else c=-1.0;return +c}function QW(a){a=a|0;return a|0}function RW(){return 2956}function SW(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+892+(b<<2)>>2];else c=-1.0;return +c}function TW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+796;kV(a,e);l=d;return}function UW(a){a=a|0;return a|0}function VW(a){a=a|0;return a|0}function WW(){return 2968}function XW(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+225+c>>0]=d&1;b=1}else b=0;return b|0}function YW(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+225+c>>0]|0)!=0;else b=0;return b|0}function ZW(){return 2980}function _W(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+208+c>>0]=d&1;b=1}else b=0;return b|0}function $W(){return 2996}function aX(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+208+c>>0]|0)!=0;else b=0;return b|0}function bX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+200;kV(a,e);l=d;return}function cX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+140;kV(a,e);l=d;return}function dX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+124>>2];eX(a,e);l=d;return}function eX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fX(e,b);b=gX()|0;c[a>>2]=pc(b|0,hX(e)|0)|0;l=d;return}function fX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kX(e,jX(c[b>>2]|0)|0);eG(e);l=d;return}function gX(){return iX()|0}function hX(a){a=a|0;return a|0}function iX(){return 360}function jX(a){a=a|0;return a|0}function kX(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lX(){return 3008}function mX(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<19){c[a+36+(b<<2)>>2]=d;a=1}else a=0;return a|0}function nX(){return 3024}function oX(a,b){a=a|0;b=b|0;if(b>>>0<19)a=c[a+36+(b<<2)>>2]|0;else a=-1;return a|0}function pX(){return 3036}function qX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;kV(a,e);l=d;return}function rX(a){a=a|0;return 288}function sX(){return 344}function tX(){return 272}function uX(){return 288}function vX(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;wX();d=xX()|0;g=yX()|0;n=zX()|0;m=AX()|0;k=BX()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,36584,oT()|0,71);c[b>>2]=FX(58)|0;g=zX()|0;f=GX(e)|0;d=HX(e)|0;h=EG()|0;Ub(g|0,36596,f|0,d|0,h|0,36,IX(b)|0,0);c[b>>2]=LX(59)|0;h=zX()|0;d=MX(e)|0;f=NX(e)|0;g=EG()|0;Ub(h|0,36615,d|0,f|0,g|0,37,OX(b)|0,0);c[b>>2]=RX(60)|0;g=zX()|0;f=SX(e)|0;e=TX(e)|0;d=eL()|0;Ub(g|0,36624,f|0,e|0,d|0,20,UX(b)|0,0);c[b>>2]=20;d=zX()|0;e=WX()|0;f=EG()|0;g=XX(b)|0;h=WX()|0;i=eL()|0;Vb(d|0,36633,e|0,f|0,38,g|0,h|0,i|0,21,XX(b)|0);c[b>>2]=24;i=zX()|0;h=WX()|0;g=EG()|0;f=XX(b)|0;e=WX()|0;d=eL()|0;Vb(i|0,36642,h|0,g|0,38,f|0,e|0,d|0,21,XX(b)|0);l=a;return}function wX(){return}function xX(){return 0}function yX(){return 0}function zX(){return zY()|0}function AX(){return yY()|0}function BX(){return xY()|0}function CX(a){a=a|0;return wY(a)|0}function DX(a){a=a|0;if(a|0){qw(a);Q9(a)}return}function EX(a,b){a=a|0;b=b|0;kY(a,b);return}function FX(a){a=a|0;return a|0}function GX(a){a=a|0;return 2}function HX(a){a=a|0;return jY()|0}function IX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function JX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=iY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function KX(a,b){a=a|0;b=b|0;hY(a,b);return}function LX(a){a=a|0;return a|0}function MX(a){a=a|0;return 2}function NX(a){a=a|0;return gY()|0}function OX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function PX(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=fY(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function QX(a,b){a=a|0;b=b|0;bY(a,b);return}function RX(a){a=a|0;return a|0}function SX(a){a=a|0;return 3}function TX(a){a=a|0;return aY()|0}function UX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function VX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=$X(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function WX(){return _X()|0}function XX(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function YX(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function _X(){return 912}function $X(a){a=a|0;return a|0}function aY(){return 3044}function bY(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;if(d|0){IG(d);Q9(d)}if(OF(b)|0)b=0;else{d=P9(4)|0;cY(d,b);b=d}c[a>>2]=b;return}function cY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fN(e,b);b=dY()|0;c[a>>2]=pc(b|0,iN(e)|0)|0;l=d;return}function dY(){return eY()|0}function eY(){return 64}function fY(a){a=a|0;return a|0}function gY(){return 3056}function hY(a,b){a=a|0;b=b|0;b=c[b>>2]|0;if(!b)YF(a);else aH(a,b);return}function iY(a){a=a|0;return a|0}function jY(){return 3064}function kY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;kz(b,j,h,g,k);lY(a);eH(e,36668);b=O(c[h>>2]<<2,c[g>>2]|0)|0;mY(i,b,c[j>>2]|0);nY(f,i);oY(a,e,f);IG(f);IG(e);eH(e,36675);QI(f,h);oY(a,e,f);IG(f);IG(e);eH(e,36681);QI(f,g);oY(a,e,f);IG(f);IG(e);l=d;return}function lY(a){a=a|0;fG(a,lc()|0);return}function mY(a,b,c){a=a|0;b=b|0;c=c|0;vY(a,b,c);return}function nY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;pY(e,b);b=qY()|0;c[a>>2]=pc(b|0,rY(e)|0)|0;l=d;return}function oY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;aH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function pY(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;tY(f,b);uY(e,f);eG(e);l=d;return}function qY(){return sY()|0}function rY(a){a=a|0;return a|0}function sY(){return 400}function tY(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function uY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function vY(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function wY(a){a=a|0;return 376}function xY(){return 384}function yY(){return 360}function zY(){return 376}function AY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;BY();d=CY()|0;g=DY()|0;n=EY()|0;m=FY()|0;k=GY()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,36719,oT()|0,72);c[b>>2]=KY(61)|0;g=EY()|0;f=LY(e)|0;e=MY(e)|0;d=EG()|0;Ub(g|0,36726,f|0,e|0,d|0,39,NY(b)|0,0);l=a;return}function BY(){return}function CY(){return 0}function DY(){return 0}function EY(){return WY()|0}function FY(){return VY()|0}function GY(){return UY()|0}function HY(a){a=a|0;return TY(a)|0}function IY(a){a=a|0;if(a|0){yw(a);Q9(a)}return}function JY(a,b){a=a|0;b=b|0;RY(a,b);return}function KY(a){a=a|0;return a|0}function LY(a){a=a|0;return 2}function MY(a){a=a|0;return QY()|0}function NY(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function OY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=PY(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function PY(a){a=a|0;return a|0}function QY(){return 3072}function RY(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=SY(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function SY(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?36739:a+64|0)|0}function TY(a){a=a|0;return 200}function UY(){return 408}function VY(){return 184}function WY(){return 200}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();f=ZY()|0;h=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,36759,oT()|0,73);c[b>>2]=fZ(62)|0;h=$Y()|0;d=gZ(e)|0;f=hZ(e)|0;g=eL()|0;Ub(h|0,36770,d|0,f|0,g|0,22,iZ(b)|0,0);c[b>>2]=0;g=$Y()|0;f=EU()|0;d=EG()|0;h=kZ(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,36787,f|0,d|0,40,h|0,i|0,j|0,23,kZ(b)|0);c[b>>2]=8;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36793,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=12;g=$Y()|0;f=WX()|0;d=EG()|0;h=nZ(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,36807,f|0,d|0,41,h|0,i|0,j|0,24,nZ(b)|0);c[b>>2]=16;j=$Y()|0;i=WX()|0;h=EG()|0;d=nZ(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,36821,i|0,h|0,41,d|0,f|0,g|0,24,nZ(b)|0);c[b>>2]=rZ(63)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=eL()|0;Ub(g|0,36835,f|0,e|0,d|0,25,uZ(b)|0,0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return QZ()|0}function aZ(){return PZ()|0}function bZ(){return OZ()|0}function cZ(a){a=a|0;return NZ(a)|0}function dZ(a){a=a|0;if(a|0)Q9(a);return}function eZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 3}function hZ(a){a=a|0;return AZ()|0}function iZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function kZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function lZ(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function mZ(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function nZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function oZ(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function pZ(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function qZ(a,b){a=a|0;b=b|0;yZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return xZ()|0}function uZ(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=wZ(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function wZ(a){a=a|0;return a|0}function xZ(){return 3080}function yZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,b);hw(a,d);l=c;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3092}function BZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];CZ(g,e);DZ(f,b,g);IG(f);IG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;HZ(e,b);b=IZ()|0;c[a>>2]=pc(b|0,JZ(e)|0)|0;l=d;return}function DZ(a,b,c){a=a|0;b=b|0;c=c|0;EZ(a,b,17,c);return}function EZ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;FZ(i,e);h=c[b>>2]|0;g=oR(j)|0;b=pR(j)|0;e=GZ(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function FZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function GZ(a){a=a|0;return a|0}function HZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;MZ(e,LZ(c[b>>2]|0)|0);eG(e);l=d;return}function IZ(){return KZ()|0}function JZ(a){a=a|0;return a|0}function KZ(){return 440}function LZ(a){a=a|0;return a|0}function MZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function NZ(a){a=a|0;return 264}function OZ(){return 424}function PZ(){return 248}function QZ(){return 264}function RZ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;SZ();d=TZ()|0;g=UZ()|0;n=VZ()|0;m=WZ()|0;k=XZ()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,36880,oT()|0,74);c[b>>2]=$Z(64)|0;g=VZ()|0;f=a_(e)|0;d=b_(e)|0;h=eL()|0;Ub(g|0,36891,f|0,d|0,h|0,26,c_(b)|0,0);h=f_(65)|0;d=VZ()|0;f=g_()|0;g=EG()|0;Vb(d|0,36907,f|0,g|0,42,h_(h)|0,0,0,0,0);h=f_(66)|0;g=VZ()|0;f=g_()|0;d=EG()|0;Vb(g|0,36917,f|0,d|0,42,h_(h)|0,0,0,0,0);c[b>>2]=l_(10)|0;h=VZ()|0;d=m_(e)|0;f=n_(e)|0;g=WR()|0;Ub(h|0,33188,d|0,f|0,g|0,5,o_(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=VZ()|0;f=q_(e)|0;d=r_(e)|0;h=RJ()|0;Ub(g|0,36927,f|0,d|0,h|0,67,s_(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=VZ()|0;d=q_(e)|0;f=r_(e)|0;g=RJ()|0;Ub(h|0,33201,d|0,f|0,g|0,67,s_(b)|0,0);c[b>>2]=v_(1)|0;g=VZ()|0;f=w_(e)|0;d=x_(e)|0;h=y_()|0;Ub(g|0,36950,f|0,d|0,h|0,1,z_(b)|0,0);c[b>>2]=C_(1)|0;h=VZ()|0;d=D_(e)|0;f=E_(e)|0;g=F_()|0;Ub(h|0,36958,d|0,f|0,g|0,1,G_(b)|0,0);c[b>>2]=J_(2)|0;g=VZ()|0;f=K_(e)|0;d=L_(e)|0;h=M_()|0;Ub(g|0,36966,f|0,d|0,h|0,1,N_(b)|0,0);c[b>>2]=Q_(2)|0;h=VZ()|0;d=R_(e)|0;f=S_(e)|0;g=T_()|0;Ub(h|0,36980,d|0,f|0,g|0,1,U_(b)|0,0);c[b>>2]=X_(1)|0;g=VZ()|0;f=Y_(e)|0;d=Z_(e)|0;h=__()|0;Ub(g|0,37004,f|0,d|0,h|0,1,$_(b)|0,0);c[b>>2]=c$(5)|0;h=VZ()|0;d=d$(e)|0;f=e$(e)|0;g=nP()|0;Ub(h|0,37012,d|0,f|0,g|0,3,f$(b)|0,0);c[b>>2]=i$(2)|0;g=VZ()|0;f=j$(e)|0;d=k$(e)|0;h=l$()|0;Ub(g|0,37026,f|0,d|0,h|0,2,m$(b)|0,0);c[b>>2]=p$(6)|0;h=VZ()|0;d=q$(e)|0;f=r$(e)|0;g=s$()|0;Ub(h|0,37038,d|0,f|0,g|0,6,t$(b)|0,0);c[b>>2]=w$(1)|0;g=VZ()|0;f=x$(e)|0;d=y$(e)|0;h=z$()|0;Ub(g|0,37056,f|0,d|0,h|0,1,A$(b)|0,0);c[b>>2]=D$(2)|0;h=VZ()|0;d=E$(e)|0;f=F$(e)|0;g=G$()|0;Ub(h|0,37066,d|0,f|0,g|0,1,H$(b)|0,0);c[b>>2]=K$(7)|0;g=VZ()|0;f=L$(e)|0;d=M$(e)|0;h=s$()|0;Ub(g|0,37082,f|0,d|0,h|0,7,N$(b)|0,0);c[b>>2]=Q$(1)|0;h=VZ()|0;d=R$(e)|0;f=S$(e)|0;g=T$()|0;Ub(h|0,37090,d|0,f|0,g|0,1,U$(b)|0,0);c[b>>2]=X$(1)|0;g=VZ()|0;f=Y$(e)|0;e=Z$(e)|0;d=_$()|0;Ub(g|0,37103,f|0,e|0,d|0,1,$$(b)|0,0);l=a;return}function SZ(){return}function TZ(){return 0}function UZ(){return 0}function VZ(){return u1()|0}function WZ(){return t1()|0}function XZ(){return s1()|0}function YZ(a){a=a|0;return r1(a)|0}function ZZ(a){a=a|0;if(a|0){Pr(a);Q9(a)}return}function _Z(a,b){a=a|0;b=b|0;d1(a,b);return}function $Z(a){a=a|0;return a|0}function a_(a){a=a|0;return 3}function b_(a){a=a|0;return c1()|0}function c_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function d_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b1(b)|0;YG(f,d);oe[a&127](b,f);IG(f);l=e;return}function e_(a,b){a=a|0;b=b|0;_0(a,b);return}function f_(a){a=a|0;return a|0}function g_(){return Z0()|0}function h_(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Y0(d)|0;l=b;return a|0}function i_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function j_(a,b){a=a|0;b=b|0;M0(a,b);return}function k_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L0(a,b,c,d);return}function l_(a){a=a|0;return a|0}function m_(a){a=a|0;return 5}function n_(a){a=a|0;return K0()|0}function o_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function p_(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b0(b)|0;YG(h,d);YG(i,e);f=FH(f)|0;Ae[a&15](b,h,i,f);IG(i);IG(h);l=g;return}function q_(a){a=a|0;return 2}function r_(a){a=a|0;return J0()|0}function s_(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function t_(a,b){a=a|0;b=b|0;var d=0,e=0;e=I0(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function u_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;H0(a,b,c,d,e);return}function v_(a){a=a|0;return a|0}function w_(a){a=a|0;return 6}function x_(a){a=a|0;return G0()|0}function y_(){return 37214}function z_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A_(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);f=GG(f)|0;g=+XG(g);Be[a&1](b,i,j,f,g);IG(j);IG(i);l=h;return}function B_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;F0(a,b,c,d,e,f,g);return}function C_(a){a=a|0;return a|0}function D_(a){a=a|0;return 8}function E_(a){a=a|0;return E0()|0}function F_(){return 37204}function G_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function H_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;i=+XG(i);De[a&1](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function I_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;D0(a,b,c,d,e,f);return}function J_(a){a=a|0;return a|0}function K_(a){a=a|0;return 7}function L_(a){a=a|0;return C0()|0}function M_(){return 37195}function N_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);f=GG(f)|0;g=+XG(g);h=WG(h)|0;Ce[a&3](b,j,k,f,g,h);IG(k);IG(j);l=i;return}function P_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;B0(a,b,c,d,e,f,g);return}function Q_(a){a=a|0;return a|0}function R_(a){a=a|0;return 8}function S_(a){a=a|0;return A0()|0}function T_(){return 37185}function U_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);f=GG(f)|0;g=GG(g)|0;h=GG(h)|0;i=GG(i)|0;Le[a&3](b,k,m,f,g,h,i);IG(m);IG(k);l=j;return}function W_(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;z0(a,b,c,d,e,f,g);return}function X_(a){a=a|0;return a|0}function Y_(a){a=a|0;return 8}function Z_(a){a=a|0;return y0()|0}function __(){return 37175}function $_(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a$(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=b0(b)|0;YG(k,d);YG(m,e);YG(n,f);YG(o,g);h=GG(h)|0;i=+XG(i);Je[a&3](b,k,m,n,o,h,i);IG(o);IG(n);IG(m);IG(k);l=j;return}function b$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;x0(a,b,c,d,e,f);return}function c$(a){a=a|0;return a|0}function d$(a){a=a|0;return 7}function e$(a){a=a|0;return w0()|0}function f$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function g$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);YG(n,g);h=GG(h)|0;Ie[a&7](b,j,k,m,n,h);IG(n);IG(m);IG(k);IG(j);l=i;return}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;v0(a,b,c,d,e,f);return}function i$(a){a=a|0;return a|0}function j$(a){a=a|0;return 7}function k$(a){a=a|0;return u0()|0}function l$(){return 37166}function m$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function n$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);YG(k,e);YG(m,f);g=GG(g)|0;h=+XG(h);Fe[a&3](b,j,k,m,g,h);IG(m);IG(k);IG(j);l=i;return}function o$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;t0(a,b,c,d,e);return}function p$(a){a=a|0;return a|0}function q$(a){a=a|0;return 6}function r$(a){a=a|0;return s0()|0}function s$(){return 37158}function t$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function u$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);YG(j,e);YG(k,f);g=GG(g)|0;Ee[a&15](b,i,j,k,g);IG(k);IG(j);IG(i);l=h;return}function v$(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;r0(a,b,c,d,e,f);return}function w$(a){a=a|0;return a|0}function x$(a){a=a|0;return 7}function y$(a){a=a|0;return q0()|0}function z$(){return 37149}function A$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function B$(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=b0(b)|0;YG(j,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;h=+XG(h);se[a&1](b,j,e,f,g,h);IG(j);l=i;return}function C$(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;p0(a,b,c,d,e);return}function D$(a){a=a|0;return a|0}function E$(a){a=a|0;return 6}function F$(a){a=a|0;return o0()|0}function G$(){return 37141}function H$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function I$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=+XG(e);f=GG(f)|0;g=WG(g)|0;re[a&3](b,i,e,f,g);IG(i);l=h;return}function J$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;n0(a,b,c,d);return}function K$(a){a=a|0;return a|0}function L$(a){a=a|0;return 6}function M$(a){a=a|0;return m0()|0}function N$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function O$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=b0(b)|0;YG(i,d);e=GG(e)|0;oG(j,f);YG(k,g);Ee[a&15](b,i,e,j,k);IG(k);T9(j);IG(i);l=h;return}function P$(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;f0(a,b,c,d,e,f,h,i);return}function Q$(a){a=a|0;return a|0}function R$(a){a=a|0;return 10}function S$(a){a=a|0;return e0()|0}function T$(){return 37129}function U$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function V$(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=b0(b)|0;YG(n,d);e=+XG(e);YG(o,f);g=GG(g)|0;oG(p,h);YG(q,i);j=+XG(j);YG(r,k);te[a&1](b,n,e,o,g,p,q,j,r);IG(r);IG(q);T9(p);IG(o);IG(n);l=m;return}function W$(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;d0(a,b,c,d,e,f,g,h);return}function X$(a){a=a|0;return a|0}function Y$(a){a=a|0;return 9}function Z$(a){a=a|0;return c0()|0}function _$(){return 37118}function $$(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function a0(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=b0(b)|0;YG(m,d);YG(n,e);YG(o,f);YG(p,g);h=GG(h)|0;i=+XG(i);j=WG(j)|0;Ke[a&1](b,m,n,o,p,h,i,j);IG(p);IG(o);IG(n);IG(m);l=k;return}function b0(a){a=a|0;return a|0}function c0(){return 3104}function d0(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;uH(n,b);uH(m,c);uH(k,d);uH(j,e);Yv(a,n,m,k,j,f,g,h);l=i;return}function e0(){return 3140}function f0(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=g0(d,k)|0;cf(k);if(!(OF(j)|0)){IL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}uH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=OF(j)|0;Zv(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function g0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(h0(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=i0(f)|0;TF(e);l=d;return b|0}function h0(a){a=a|0;return l0()|0}function i0(a){a=+a;return k0(j0(a)|0)|0}function j0(a){a=+a;return ~~a>>>0|0}function k0(a){a=a|0;return a|0}function l0(){return 3180}function m0(){return 3184}function n0(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;uH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;dw(b,g,e,f,0);l=h;return}function o0(){return 3208}function p0(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;uH(g,b);Xv(a,g,c,d,e);l=f;return}function q0(){return 3232}function r0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;uH(h,b);Wv(a,h,c,d,e,f);l=g;return}function s0(){return 3260}function t0(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;uH(i,b);uH(h,c);uH(g,d);Uv(a,i,h,g,e,1.0);l=f;return}function u0(){return 3284}function v0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;uH(j,b);uH(i,c);uH(h,d);Uv(a,j,i,h,e,f);l=g;return}function w0(){return 3312}function x0(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;uH(k,b);uH(j,c);uH(i,d);uH(h,e);Tv(a,k,j,i,h,f);l=g;return}function y0(){return 3340}function z0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;uH(m,b);uH(k,c);uH(j,d);uH(i,e);Sv(a,m,k,j,i,f,g);l=h;return}function A0(){return 3372}function B0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Rv(a,j,i,d,e,f,g);l=h;return}function C0(){return 3404}function D0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;uH(i,b);uH(h,c);Qv(a,i,h,d,e,f);l=g;return}function E0(){return 3432}function F0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;uH(j,b);uH(i,c);Pv(a,j,i,d,e,f,g);l=h;return}function G0(){return 3464}function H0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;uH(h,b);uH(g,c);Ov(a,h,g,d,e);l=f;return}function I0(a){a=a|0;return a|0}function J0(){return 3488}function K0(){return 3496}function L0(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;uH(j,b);uH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];fv(a,h,g,e);l=f;return}function M0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(N0(b)|0)*20|0;P0(d,e,O0(b)|0);Q0(a,d);l=c;return}function N0(a){a=a|0;return c[a>>2]|0}function O0(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function P0(a,b,c){a=a|0;b=b|0;c=c|0;X0(a,b,c);return}function Q0(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;R0(e,b);b=S0()|0;c[a>>2]=pc(b|0,T0(e)|0)|0;l=d;return}function R0(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;V0(f,b);W0(e,f);eG(e);l=d;return}function S0(){return U0()|0}function T0(a){a=a|0;return a|0}function U0(){return 456}function V0(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function W0(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function X0(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function Y0(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function Z0(){return 64}function _0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=($0(b)|0)<<1;P0(d,e,a1(b)|0);Q0(a,d);l=c;return}function $0(a){a=a|0;return c[a>>2]|0}function a1(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Cb(37253,37262,1039,37276);return 0}function b1(a){a=a|0;return a|0}function c1(){return 3516}function d1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=e1(a)|0;c[e>>2]=j;if((j|0)!=(f1(a)|0))do{g1(g,e);XO(h,d);h1(f,b,g,h);IG(f);IG(h);IG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(f1(a)|0));l=i;return}function e1(a){a=a|0;return c[a+8>>2]|0}function f1(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function g1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;l1(e,b);b=m1()|0;c[a>>2]=pc(b|0,n1(e)|0)|0;l=d;return}function h1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;i1(a,b,17,c,d);return}function i1(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;j1(i,e,f);h=c[b>>2]|0;b=IS(j)|0;e=JS(j)|0;f=k1(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function j1(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function k1(a){a=a|0;return a|0}function l1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;q1(e,p1(c[b>>2]|0)|0);eG(e);l=d;return}function m1(){return o1()|0}function n1(a){a=a|0;return a|0}function o1(){return 464}function p1(a){a=a|0;return a|0}function q1(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function r1(a){a=a|0;return 128}function s1(){return 440}function t1(){return 112}function u1(){return 128}function v1(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w1();h=x1()|0;j=y1()|0;n=z1()|0;m=A1()|0;k=B1()|0;g=eU()|0;d=rG()|0;f=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,37306,oT()|0,77);c[b>>2]=0;j=z1()|0;i=E1()|0;h=EG()|0;f=F1(b)|0;d=E1()|0;g=eL()|0;Vb(j|0,37316,i|0,h|0,43,f|0,d|0,g|0,27,F1(b)|0);c[b>>2]=J1(68)|0;g=z1()|0;d=K1(e)|0;e=L1(e)|0;f=EG()|0;Ub(g|0,37326,d|0,e|0,f|0,44,M1(b)|0,0);b=P1(69)|0;f=z1()|0;e=g_()|0;d=EG()|0;Vb(f|0,37338,e|0,d|0,45,Q1(b)|0,0,0,0,0);l=a;return}function w1(){return}function x1(){return 0}function y1(){return 0}function z1(){return $1()|0}function A1(){return _1()|0}function B1(){return Z1()|0}function C1(a){a=a|0;return Y1(a)|0}function D1(a){a=a|0;if(a|0)Q9(a);return}function E1(){return X1()|0}function F1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function G1(a,b){a=a|0;b=b|0;return xI(b+(c[a>>2]|0)|0)|0}function H1(a,b,d){a=a|0;b=b|0;d=d|0;d=GG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function I1(a,b){a=a|0;b=b|0;W1(a,b);return}function J1(a){a=a|0;return a|0}function K1(a){a=a|0;return 2}function L1(a){a=a|0;return V1()|0}function M1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function N1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=U1(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function O1(a,b){a=a|0;b=b|0;T1(a,b);return}function P1(a){a=a|0;return a|0}function Q1(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=S1(d)|0;l=b;return a|0}function R1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;oe[c[a>>2]&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function S1(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function T1(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)YF(a);else aH(a,b);return}function U1(a){a=a|0;return a|0}function V1(){return 3528}function W1(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;XQ(a,e);l=d;return}function X1(){return 920}function Y1(a){a=a|0;return 480}function Z1(){return 464}function _1(){return 488}function $1(){return 480}function a2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;b2();g=c2()|0;d=d2()|0;n=e2()|0;m=f2()|0;k=g2()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,37360,oT()|0,78);d=e2()|0;f=j2(b)|0;g=k2(b)|0;Tb(d|0,f|0,g|0,rG()|0,35,17);g=e2()|0;f=n2(b)|0;d=o2(b)|0;Tb(g|0,f|0,d|0,EG()|0,46,36);d=e2()|0;f=r2(b)|0;g=s2(b)|0;Tb(d|0,f|0,g|0,KH()|0,2,47);c[b>>2]=0;g=e2()|0;f=lU()|0;d=iQ()|0;h=v2(b)|0;i=lU()|0;j=dQ()|0;Vb(g|0,37377,f|0,d|0,8,h|0,i|0,j|0,5,v2(b)|0);c[b>>2]=4;j=e2()|0;i=lU()|0;h=iQ()|0;d=v2(b)|0;f=lU()|0;g=dQ()|0;Vb(j|0,37387,i|0,h|0,8,d|0,f|0,g|0,5,v2(b)|0);c[b>>2]=8;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37399,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=12;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37410,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=16;g=e2()|0;f=WX()|0;d=EG()|0;h=y2(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37417,f|0,d|0,48,h|0,i|0,j|0,28,y2(b)|0);c[b>>2]=20;j=e2()|0;i=WX()|0;h=EG()|0;d=y2(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37430,i|0,h|0,48,d|0,f|0,g|0,28,y2(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=e2()|0;f=B2(e)|0;d=C2(e)|0;h=EG()|0;Ub(g|0,37441,f|0,d|0,h|0,49,D2(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=e2()|0;d=F2(e)|0;f=G2(e)|0;g=H2()|0;Ub(h|0,30345,d|0,f|0,g|0,1,I2(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=e2()|0;f=K2(e)|0;e=L2(e)|0;d=RJ()|0;Ub(g|0,30351,f|0,e|0,d|0,70,M2(b)|0,0);l=a;return}function b2(){return}function c2(){return 0}function d2(){return 0}function e2(){return $2()|0}function f2(){return _2()|0}function g2(){return Z2()|0}function h2(a){a=a|0;return Y2(a)|0}function i2(a){a=a|0;if(a|0){eq(a);Q9(a)}return}function j2(a){a=a|0;return 1}function k2(a){a=a|0;return X2()|0}function l2(a){a=a|0;return U2(Bd[a&31]()|0)|0}function m2(){var a=0;a=P9(24)|0;dq(a,-1,-1.0);return a|0}function n2(a){a=a|0;return 2}function o2(a){a=a|0;return W2()|0}function p2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=S2(b)|0;b=U2(Cd[a&63](e)|0)|0;l=d;return b|0}function q2(a){a=a|0;var b=0;b=P9(24)|0;dq(b,c[a>>2]|0,-1.0);return b|0}function r2(a){a=a|0;return 3}function s2(a){a=a|0;return V2()|0}function t2(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=S2(b)|0;g[f>>2]=+T2(d);b=U2(Gd[a&63](h,f)|0)|0;l=e;return b|0}function u2(a,b){a=a|0;b=b|0;var d=0;d=P9(24)|0;dq(d,c[a>>2]|0,+g[b>>2]);return d|0}function v2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function w2(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function x2(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function y2(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function z2(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function A2(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function B2(a){a=a|0;return 2}function C2(a){a=a|0;return R2()|0}function D2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function E2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function F2(a){a=a|0;return 4}function G2(a){a=a|0;return Q2()|0}function H2(){return 37485}function I2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function J2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=O2(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=WG(d)|0;e=+XG(e);pe[b&15](a,g,e);return}function K2(a){a=a|0;return 2}function L2(a){a=a|0;return P2()|0}function M2(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function N2(a,b){a=a|0;b=b|0;var d=0,e=0;e=O2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;je[b&127](a);return}function O2(a){a=a|0;return a|0}function P2(){return 3536}function Q2(){return 3544}function R2(){return 3560}function S2(a){a=a|0;return WG(a)|0}function T2(a){a=+a;return +(+XG(a))}function U2(a){a=a|0;return a|0}function V2(){return 3568}function W2(){return 3580}function X2(){return 3588}function Y2(a){a=a|0;return 520}function Z2(){return 528}function _2(){return 504}function $2(){return 520}function a3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;b3();g=c3()|0;d=d3()|0;n=e3()|0;m=f3()|0;k=g3()|0;j=eU()|0;i=rG()|0;h=fU()|0;f=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,37512,oT()|0,80);d=e3()|0;f=j3(b)|0;g=k3(b)|0;Tb(d|0,f|0,g|0,rG()|0,39,18);c[b>>2]=o3(71)|0;g=e3()|0;f=p3(e)|0;d=q3(e)|0;h=EG()|0;Ub(g|0,37544,f|0,d|0,h|0,50,r3(b)|0,0);c[b>>2]=o3(72)|0;h=e3()|0;d=p3(e)|0;f=q3(e)|0;g=EG()|0;Ub(h|0,37551,d|0,f|0,g|0,50,r3(b)|0,0);c[b>>2]=o3(73)|0;g=e3()|0;f=p3(e)|0;e=q3(e)|0;d=EG()|0;Ub(g|0,37566,f|0,e|0,d|0,50,r3(b)|0,0);l=a;return}function b3(){return}function c3(){return 0}function d3(){return 0}function e3(){return L3()|0}function f3(){return K3()|0}function g3(){return J3()|0}function h3(a){a=a|0;return I3(a)|0}function i3(a){a=a|0;if(a|0)Q9(a);return}function j3(a){a=a|0;return 1}function k3(a){a=a|0;return H3()|0}function l3(a){a=a|0;return gS(Bd[a&31]()|0)|0}function m3(){var a=0;a=P9(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Vs(a);return a|0}function n3(a,b){a=a|0;b=b|0;G3(a,b);return}function o3(a){a=a|0;return a|0}function p3(a){a=a|0;return 2}function q3(a){a=a|0;return F3()|0}function r3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=E3(b)|0;oe[a&127](e,b);b=HG(e)|0;IG(e);l=d;return b|0}function t3(a,b){a=a|0;b=b|0;D3(a,b);return}function u3(a,b){a=a|0;b=b|0;v3(a,b);return}function v3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;w3(a,e);l=d;return}function w3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;x3(e,b);b=y3()|0;c[a>>2]=pc(b|0,z3(e)|0)|0;l=d;return}function x3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;C3(e,B3(c[b>>2]|0)|0);eG(e);l=d;return}function y3(){return A3()|0}function z3(a){a=a|0;return a|0}function A3(){return 544}function B3(a){a=a|0;return a|0}function C3(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function D3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;w3(a,e);l=d;return}function E3(a){a=a|0;return a|0}function F3(){return 3592}function G3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;w3(a,e);l=d;return}function H3(){return 3600}function I3(a){a=a|0;return 240}function J3(){return 560}function K3(){return 224}function L3(){return 240}function M3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;N3();j=O3()|0;h=P3()|0;n=Q3()|0;m=R3()|0;k=S3()|0;g=eU()|0;f=rG()|0;d=fU()|0;i=fU()|0;Sb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,37627,oT()|0,81);h=Q3()|0;i=V3(b)|0;j=W3(b)|0;Tb(h|0,i|0,j|0,rG()|0,41,19);c[b>>2]=0;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37653,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=4;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37663,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=12;j=Q3()|0;i=EU()|0;h=EG()|0;d=a4(b)|0;f=EU()|0;g=eL()|0;Vb(j|0,37669,i|0,h|0,52,d|0,f|0,g|0,30,a4(b)|0);c[b>>2]=14;g=Q3()|0;f=d4()|0;d=EG()|0;h=e4(b)|0;i=d4()|0;j=eL()|0;Vb(g|0,37678,f|0,d|0,53,h|0,i|0,j|0,31,e4(b)|0);c[b>>2]=16;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37688,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=i4(74)|0;g=Q3()|0;f=j4(e)|0;d=k4(e)|0;h=EG()|0;Ub(g|0,37697,f|0,d|0,h|0,54,l4(b)|0,0);c[b>>2]=o4(75)|0;h=Q3()|0;d=p4(e)|0;f=q4(e)|0;g=eL()|0;Ub(h|0,37704,d|0,f|0,g|0,32,r4(b)|0,0);c[b>>2]=24;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37711,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=28;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37722,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=32;g=Q3()|0;f=EU()|0;d=EG()|0;h=a4(b)|0;i=EU()|0;j=eL()|0;Vb(g|0,37730,f|0,d|0,52,h|0,i|0,j|0,30,a4(b)|0);c[b>>2]=36;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37739,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=40;g=Q3()|0;f=WX()|0;d=EG()|0;h=Z3(b)|0;i=WX()|0;j=eL()|0;Vb(g|0,37749,f|0,d|0,51,h|0,i|0,j|0,29,Z3(b)|0);c[b>>2]=44;j=Q3()|0;i=WX()|0;h=EG()|0;d=Z3(b)|0;f=WX()|0;g=eL()|0;Vb(j|0,37764,i|0,h|0,51,d|0,f|0,g|0,29,Z3(b)|0);c[b>>2]=33;c[b+4>>2]=0;g=Q3()|0;f=t4(e)|0;d=u4(e)|0;h=YJ()|0;Ub(g|0,37777,f|0,d|0,h|0,11,v4(b)|0,0);c[b>>2]=y4(12)|0;h=Q3()|0;d=z4(e)|0;f=A4(e)|0;g=WR()|0;Ub(h|0,37789,d|0,f|0,g|0,8,B4(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=Q3()|0;f=E4(e)|0;e=F4(e)|0;d=EG()|0;Ub(g|0,37801,f|0,e|0,d|0,55,G4(b)|0,0);l=a;return}function N3(){return}function O3(){return 0}function P3(){return 0}function Q3(){return Z4()|0}function R3(){return Y4()|0}function S3(){return X4()|0}function T3(a){a=a|0;return W4(a)|0}function U3(a){a=a|0;if(a|0)Q9(a);return}function V3(a){a=a|0;return 1}function W3(a){a=a|0;return V4()|0}function X3(a){a=a|0;return pN(Bd[a&31]()|0)|0}function Y3(){var a=0,b=0,d=0;a=P9(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function Z3(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function _3(a,b){a=a|0;b=b|0;return RH(b+(c[a>>2]|0)|0)|0}function $3(a,b,d){a=a|0;b=b|0;d=d|0;d=WG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function a4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function b4(b,d){b=b|0;d=d|0;return rH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function c4(b,d,e){b=b|0;d=d|0;e=e|0;e=FH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function d4(){return U4()|0}function e4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function f4(a,b){a=a|0;b=b|0;return T4(b+(c[a>>2]|0)|0)|0}function g4(a,d,e){a=a|0;d=d|0;e=e|0;e=VW(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function h4(a,b){a=a|0;b=b|0;S4(a,b);return}function i4(a){a=a|0;return a|0}function j4(a){a=a|0;return 2}function k4(a){a=a|0;return R4()|0}function l4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function m4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=K4(b)|0;oe[a&127](e,b);b=tG(e)|0;T9(e);l=d;return b|0}function n4(a,b){a=a|0;b=b|0;Q4(a,b);return}function o4(a){a=a|0;return a|0}function p4(a){a=a|0;return 3}function q4(a){a=a|0;return P4()|0}function r4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function s4(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=K4(b)|0;oG(f,d);oe[a&127](b,f);T9(f);l=e;return}function t4(a){a=a|0;return 4}function u4(a){a=a|0;return O4()|0}function v4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function w4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=N4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=WG(d)|0;g=WG(e)|0;ue[b&63](a,f,g);return}function x4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M4(a,b,c);return}function y4(a){a=a|0;return a|0}function z4(a){a=a|0;return 5}function A4(a){a=a|0;return L4()|0}function B4(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function C4(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=K4(b)|0;d=WG(d)|0;oG(h,e);YG(i,f);Ae[a&15](b,d,h,i);IG(i);T9(h);l=g;return}function D4(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function E4(a){a=a|0;return 2}function F4(a){a=a|0;return J4()|0}function G4(a){a=a|0;var b=0,d=0;b=P9(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function H4(a,b){a=a|0;b=b|0;var d=0,e=0;e=I4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return rH(Cd[b&63](a)|0)|0}function I4(a){a=a|0;return a|0}function J4(){return 3604}function K4(a){a=a|0;return a|0}function L4(){return 3612}function M4(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;lp(b,d,e,0);return}function N4(a){a=a|0;return a|0}function O4(){return 3632}function P4(){return 3648}function Q4(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;a8(c[b+20>>2]|0,d)|0;return}function R4(){return 3660}function S4(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function T4(a){a=a|0;return b[a>>1]|0}function U4(){return 904}function V4(){return 3668}function W4(a){a=a|0;return 176}function X4(){return 576}function Y4(){return 160}function Z4(){return 176}function _4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$4();f=a5()|0;h=b5()|0;n=c5()|0;m=d5()|0;k=e5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,37844,oT()|0,82);h=c5()|0;d=h5(b)|0;f=i5(b)|0;Tb(h|0,d|0,f|0,rG()|0,44,20);f=c5()|0;d=l5(b)|0;h=m5(b)|0;Tb(f|0,d|0,h|0,n5()|0,1,21);c[b>>2]=0;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=4;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=8;h=c5()|0;d=lU()|0;f=iQ()|0;g=q5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34475,d|0,f|0,9,g|0,i|0,j|0,7,q5(b)|0);c[b>>2]=12;j=c5()|0;i=lU()|0;g=iQ()|0;f=q5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34477,i|0,g|0,9,f|0,d|0,h|0,7,q5(b)|0);c[b>>2]=34;h=c5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=56;g=c5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function $4(){return}function a5(){return 0}function b5(){return 0}function c5(){return H5()|0}function d5(){return G5()|0}function e5(){return F5()|0}function f5(a){a=a|0;return E5(a)|0}function g5(a){a=a|0;if(a|0)Q9(a);return}function h5(a){a=a|0;return 1}function i5(a){a=a|0;return D5()|0}function j5(a){a=a|0;return gV(Bd[a&31]()|0)|0}function k5(){var a=0;a=P9(16)|0;cf(a);return a|0}function l5(a){a=a|0;return 5}function m5(a){a=a|0;return C5()|0}function n5(){return 37863}function o5(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+T2(b);g[j>>2]=+T2(c);g[i>>2]=+T2(d);g[h>>2]=+T2(e);a=gV(Xd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function p5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=P9(16)|0;Of(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function q5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function s5(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function t5(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);vH(e,c,34475);g[f>>2]=+wH(e);cH(b,34475,f);IG(e);vH(e,c,34477);g[f>>2]=+wH(e);cH(b,34477,f);IG(e);cY(a,b);l=d;return}function u5(a){a=a|0;return 3}function v5(a){a=a|0;return B5()|0}function w5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function x5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);ue[a&63](h,f,g);d=HG(h)|0;IG(h);IG(g);IG(f);l=e;return d|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if((!f?(vH(c,a,34434),g=+wH(c),vH(d,b,34434),f=g!=+wH(d),IG(d),IG(c),!f):0)?(vH(c,a,34475),g=+wH(c),vH(d,b,34475),f=g!=+wH(d),IG(d),IG(c),!f):0){vH(c,a,34477);g=+wH(c);vH(d,b,34477);a=g==+wH(d);IG(d);IG(c)}else a=0;l=e;return a|0}function z5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function A5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;YG(f,b);YG(g,d);d=rH(Gd[a&63](f,g)|0)|0;IG(g);IG(f);l=e;return d|0}function B5(){return 3672}function C5(){return 3684}function D5(){return 3704}function E5(a){a=a|0;return 72}function F5(){return 208}function G5(){return 296}function H5(){return 72}function I5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;J5();f=K5()|0;h=L5()|0;n=M5()|0;m=N5()|0;k=O5()|0;j=eU()|0;i=rG()|0;g=fU()|0;d=fU()|0;Sb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,37870,oT()|0,83);h=M5()|0;d=R5(b)|0;f=S5(b)|0;Tb(h|0,d|0,f|0,rG()|0,46,21);f=M5()|0;d=V5(b)|0;h=W5(b)|0;Tb(f|0,d|0,h|0,X5()|0,2,57);c[b>>2]=0;h=M5()|0;d=lU()|0;f=iQ()|0;g=_5(b)|0;i=lU()|0;j=dQ()|0;Vb(h|0,34432,d|0,f|0,10,g|0,i|0,j|0,8,_5(b)|0);c[b>>2]=4;j=M5()|0;i=lU()|0;g=iQ()|0;f=_5(b)|0;d=lU()|0;h=dQ()|0;Vb(j|0,34434,i|0,g|0,10,f|0,d|0,h|0,8,_5(b)|0);c[b>>2]=35;h=M5()|0;d=u5(e)|0;f=v5(e)|0;g=VH()|0;Ub(h|0,37851,d|0,f|0,g|0,43,w5(b)|0,0);c[b>>2]=58;g=M5()|0;f=AJ(e)|0;e=BJ(e)|0;d=VH()|0;Ub(g|0,37856,f|0,e|0,d|0,44,z5(b)|0,0);l=a;return}function J5(){return}function K5(){return 0}function L5(){return 0}function M5(){return i6()|0}function N5(){return h6()|0}function O5(){return g6()|0}function P5(a){a=a|0;return f6(a)|0}function Q5(a){a=a|0;if(a|0)Q9(a);return}function R5(a){a=a|0;return 1}function S5(a){a=a|0;return e6()|0}function T5(a){a=a|0;return pV(Bd[a&31]()|0)|0}function U5(){var a=0;a=P9(8)|0;bf(a);return a|0}function V5(a){a=a|0;return 3}function W5(a){a=a|0;return d6()|0}function X5(){return 37877}function Y5(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+T2(b);g[e>>2]=+T2(c);a=pV(Gd[a&63](f,e)|0)|0;l=d;return a|0}function Z5(a,b){a=a|0;b=b|0;var c=0;c=P9(8)|0;df(c,+g[a>>2],+g[b>>2]);return c|0}function _5(a){a=a|0;var b=0;b=P9(4)|0;c[b>>2]=c[a>>2];return b|0}function $5(a,b){a=a|0;b=b|0;return +(+kH(b+(c[a>>2]|0)|0))}function a6(a,b,d){a=a|0;b=b|0;d=+d;d=+XG(d);g[b+(c[a>>2]|0)>>2]=d;return}function b6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;vH(e,c,34432);g[f>>2]=+wH(e);cH(b,34432,f);IG(e);vH(e,c,34434);g[f>>2]=+wH(e);cH(b,34434,f);IG(e);cY(a,b);l=d;return}function c6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;vH(c,a,34432);g=+wH(c);vH(d,b,34432);f=g!=+wH(d);IG(d);IG(c);if(f)a=0;else{vH(c,a,34434);g=+wH(c);vH(d,b,34434);a=g==+wH(d);IG(d);IG(c)}l=e;return a|0}function d6(){return 3708}function e6(){return 3720}function f6(a){a=a|0;return 80}function g6(){return 544}function h6(){return 312}function i6(){return 80}function j6(a){a=a|0;$A(37882,84);return}function k6(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;I7(d);lY(a);dI(c,d);l6(a,37891,c);IG(c);dI(c,d+4|0);m6(a,37897,c);IG(c);dI(c,d+8|0);n6(a,37905,c);IG(c);dI(c,d+12|0);l6(a,37912,c);IG(c);dI(c,d+16|0);n6(a,37918,c);IG(c);dI(c,d+20|0);m6(a,37925,c);IG(c);dI(c,d+24|0);m6(a,37933,c);IG(c);dI(c,d+28|0);cN(a,37941,c);IG(c);dI(c,d+32|0);cN(a,37950,c);IG(c);dI(c,d+36|0);cN(a,37959,c);IG(c);l=b;return}function l6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function m6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function n6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function o6(){p6();return}function p6(){q6(0);return}function q6(a){a=a|0;cc(r6()|0,37968);Rb(EU()|0,37973,1,1,0);s6();t6();u6();v6();w6();x6();y6();z6();A6();B6();C6();ac(D6()|0,37978);ac(E6()|0,37990);bc(F6()|0,4,38023);Xb(g_()|0,38036);G6();H6(38052);I6(38089);J6(38128);K6(38159);L6(38199);M6(38228);N6();O6();H6(38266);I6(38298);J6(38331);K6(38364);L6(38398);M6(38431);P6();Q6();R6();return}function r6(){return B7()|0}function s6(){_b(z7()|0,39196,1,-128,127);return}function t6(){_b(x7()|0,39184,1,-128,127);return}function u6(){_b(v7()|0,39170,1,0,255);return}function v6(){_b(t7()|0,39164,2,-32768,32767);return}function w6(){_b(d4()|0,39149,2,0,65535);return}function x6(){_b(WX()|0,39145,4,-2147483648,2147483647);return}function y6(){_b(E1()|0,39132,4,0,-1);return}function z6(){_b(r7()|0,39127,4,-2147483648,2147483647);return}function A6(){_b(p7()|0,39113,4,0,-1);return}function B6(){Yb(lU()|0,39107,4);return}function C6(){Yb(n7()|0,39100,8);return}function D6(){return m7()|0}function E6(){return l7()|0}function F6(){return k7()|0}function G6(){$b(S0()|0,0,38944);return}function H6(a){a=a|0;$b(i7()|0,0,a|0);return}function I6(a){a=a|0;$b(qY()|0,1,a|0);return}function J6(a){a=a|0;$b(g7()|0,2,a|0);return}function K6(a){a=a|0;$b(e7()|0,3,a|0);return}function L6(a){a=a|0;$b(c7()|0,4,a|0);return}function M6(a){a=a|0;$b(a7()|0,5,a|0);return}function N6(){$b(_6()|0,4,38728);return}function O6(){$b(Y6()|0,5,38658);return}function P6(){$b(W6()|0,6,38596);return}function Q6(){$b(U6()|0,7,38533);return}function R6(){$b(S6()|0,7,38465);return}function S6(){return T6()|0}function T6(){return 592}function U6(){return V6()|0}function V6(){return 600}function W6(){return X6()|0}function X6(){return 608}function Y6(){return Z6()|0}function Z6(){return 616}function _6(){return $6()|0}function $6(){return 624}function a7(){return b7()|0}function b7(){return 632}function c7(){return d7()|0}function d7(){return 640}function e7(){return f7()|0}function f7(){return 648}function g7(){return h7()|0}function h7(){return 656}function i7(){return j7()|0}function j7(){return 664}function k7(){return 672}function l7(){return 696}function m7(){return 32}function n7(){return o7()|0}function o7(){return 952}function p7(){return q7()|0}function q7(){return 936}function r7(){return s7()|0}function s7(){return 928}function t7(){return u7()|0}function u7(){return 896}function v7(){return w7()|0}function w7(){return 880}function x7(){return y7()|0}function y7(){return 888}function z7(){return A7()|0}function A7(){return 872}function B7(){return 832}function C7(a){a=a|0;return t9(c[a+4>>2]|0)|0}function D7(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[14504]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=58056+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[14504]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[14506]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=58056+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=f;w=i;l=x;return w|0}j=c[14505]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[58320+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=58320+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[14505]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[14509]|0;b=n>>>3;d=58056+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[14506]=h;c[14509]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[14505]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[58320+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[58320+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[14506]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=58320+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=58320+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[14506]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[14509]|0;if(b>>>0>15){w=a+n|0;c[14509]=w;c[14506]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[14506]=0;c[14509]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[14507]|0;if(i>>>0>n>>>0){u=i-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=p&-16^1431655768;a=4096}else a=c[14624]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[14614]|0;if(a|0?(o=c[14612]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[14615]&4)){d=c[14510]|0;c:do if(d){e=58464;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=aba(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=aba(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[14623]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[14612]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[14614]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=aba(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[14624]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((aba(a|0)|0)==(-1|0)){aba(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[14615]=c[14615]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=aba(m|0)|0,s=aba(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[14612]|0)+h|0;c[14612]=b;if(b>>>0>(c[14613]|0)>>>0)c[14613]=b;j=c[14510]|0;do if(j){b=58464;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[14507]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[14511]=c[14626];break}if(g>>>0<(c[14508]|0)>>>0)c[14508]=g;a=g+h|0;b=58464;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=58464;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[14509]|0)==(b|0)){w=(c[14506]|0)+i|0;c[14506]=w;c[14509]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=58320+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[14505]=c[14505]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=58320+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[14505]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[14507]|0)+i|0;c[14507]=w;c[14510]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=58464;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[14511]=c[14626];d=a+4|0;c[d>>2]=27;c[b>>2]=c[14616];c[b+4>>2]=c[14617];c[b+8>>2]=c[14618];c[b+12>>2]=c[14619];c[14616]=g;c[14617]=h;c[14619]=0;c[14618]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=58320+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[14505]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[14508]|0;if((w|0)==0|g>>>0>>0)c[14508]=g;c[14616]=g;c[14617]=h;c[14619]=0;c[14513]=c[14622];c[14512]=-1;c[14517]=58056;c[14516]=58056;c[14519]=58064;c[14518]=58064;c[14521]=58072;c[14520]=58072;c[14523]=58080;c[14522]=58080;c[14525]=58088;c[14524]=58088;c[14527]=58096;c[14526]=58096;c[14529]=58104;c[14528]=58104;c[14531]=58112;c[14530]=58112;c[14533]=58120;c[14532]=58120;c[14535]=58128;c[14534]=58128;c[14537]=58136;c[14536]=58136;c[14539]=58144;c[14538]=58144;c[14541]=58152;c[14540]=58152;c[14543]=58160;c[14542]=58160;c[14545]=58168;c[14544]=58168;c[14547]=58176;c[14546]=58176;c[14549]=58184;c[14548]=58184;c[14551]=58192;c[14550]=58192;c[14553]=58200;c[14552]=58200;c[14555]=58208;c[14554]=58208;c[14557]=58216;c[14556]=58216;c[14559]=58224;c[14558]=58224;c[14561]=58232;c[14560]=58232;c[14563]=58240;c[14562]=58240;c[14565]=58248;c[14564]=58248;c[14567]=58256;c[14566]=58256;c[14569]=58264;c[14568]=58264;c[14571]=58272;c[14570]=58272;c[14573]=58280;c[14572]=58280;c[14575]=58288;c[14574]=58288;c[14577]=58296;c[14576]=58296;c[14579]=58304;c[14578]=58304;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[14510]=v;c[14507]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[14511]=c[14626]}while(0);b=c[14507]|0;if(b>>>0>n>>>0){u=b-n|0;c[14507]=u;w=c[14510]|0;v=w+n|0;c[14510]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(N7()|0)>>2]=12;w=0;l=x;return w|0}function E7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[14508]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[14509]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[14506]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=58320+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[14510]|0)==(j|0)){j=(c[14507]|0)+b|0;c[14507]=j;c[14510]=i;c[i+4>>2]=j|1;if((i|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(j|0)){j=(c[14506]|0)+b|0;c[14506]=j;c[14509]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[14504]=c[14504]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=58320+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=58056+(a<<1<<2)|0;b=c[14504]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=58320+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[14505]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[14505]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[14512]|0)+-1|0;c[14512]=j;if(!j)a=58472;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[14512]=-1;return}function F7(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=D7(b)|0;return b|0}if(b>>>0>4294967231){c[(N7()|0)>>2]=12;b=0;return b|0}d=G7(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=D7(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Zaa(d|0,a|0,(e>>>0>>0?e:b)|0)|0;E7(a);b=d;return b|0}function G7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[14624]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;H7(k,d);return a|0}if((c[14510]|0)==(i|0)){k=(c[14507]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[14510]=e;c[14507]=d;return a|0}if((c[14509]|0)==(i|0)){e=(c[14506]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[14506]=d;c[14509]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;H7(i,k);return a|0}return 0}function H7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[14509]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[14506]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=58320+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[14505]=c[14505]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[14510]|0)==(i|0)){i=(c[14507]|0)+b|0;c[14507]=i;c[14510]=h;c[h+4>>2]=i|1;if((h|0)!=(c[14509]|0))return;c[14509]=0;c[14506]=0;return}if((c[14509]|0)==(i|0)){i=(c[14506]|0)+b|0;c[14506]=i;c[14509]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[14504]=c[14504]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=58320+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[14505]=c[14505]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[14509]|0)){c[14506]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=58056+(b<<1<<2)|0;a=c[14504]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=58320+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[14505]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function I7(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[14622]|0)){c[14624]=4096;c[14623]=4096;c[14625]=-1;c[14626]=-1;c[14627]=0;c[14615]=0;c[14622]=n&-16^1431655768}m=c[14510]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[14507]|0;b=h+40|0;k=58464;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[14612]|0;i=d;d=f-d|0;e=c[14613]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function J7(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=P7(c[a+60>>2]|0)|0;a=M7(Pb(6,d|0)|0)|0;l=b;return a|0}function K7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Ob(54,f|0)|0):0)a[b+75>>0]=-1;f=O7(b,d,e)|0;l=g;return f|0}function L7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((M7(Jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function M7(a){a=a|0;if(a>>>0>4294963200){c[(N7()|0)>>2]=0-a;a=-1}return a|0}function N7(){return 58576}function O7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=M7(Lb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=M7(Lb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function P7(a){a=a|0;return a|0}function Q7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=M7(Kb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function R7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function S7(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)T7(a,d,e,f,j);else V7(a,d,e,k,f,0,j);if((f|0)==1){W7(k,1);f=0;break}else{W7(k,b);f=1;break}}else{T7(a,d,e,f,j);U7(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}V7(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){W7(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;U7(k,1);V7(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);W7(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;V7(h,d,e,k,n,1,j);a=h;f=n;continue}b=X7(k)|0;U7(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return} -function gz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){hz((c[14484]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){hz((c[14484]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{iz(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){hz((c[14484]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){hz((c[14484]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;iz(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;iz(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{hz((c[14484]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function hz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[14484]|0;g=c[14482]|0;if((f+d|0)>>>0>g>>>0)Cb(30024,12849,2705,30068);if((c[14483]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[14484]=f+1,a[f>>0]=g,e|0):0){d=c[14484]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[14484]=d}}else c[14484]=g+1;return}function iz(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[14484]|0;d=c[14482]|0;if((e+b|0)>>>0>d>>>0)Cb(30024,12849,2713,30059);if((c[14480]|0)>>>0>a>>>0)b=1;else{Zaa(e|0,a|0,b|0)|0;d=c[14484]|0}c[14484]=d+b;return}function jz(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function kz(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=a+16|0;k=c[i>>2]|0;h=k;if(!k){Gw(a,m,0,0,0);h=a+20|0;k=a+24|0;j=Bf(O(c[h>>2]<<2,c[k>>2]|0)|0)|0;c[i>>2]=j;i=O(c[k>>2]|0,c[h>>2]|0)|0;h=j;if((i|0)>0){k=j;j=c[m>>2]|0;while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}}c[b>>2]=h;if(e|0)c[e>>2]=c[a+20>>2];if(f|0)c[f>>2]=c[a+24>>2];if(g|0)c[g>>2]=4;l=n;return}function lz(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(c8(i)|0)|0;r=e/+g[d>>2];df(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=$v(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=aw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Hf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+gv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=Et(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function mz(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){nz(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+oz(+g[b>>2],+g[m>>2],d);i=b+4|0;df(o,k,+g[i>>2]);k=+oz(+g[b>>2],+g[m>>2],e);h=b+12|0;df(p,k,+g[h>>2]);if(f==0.0)Qv(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+gw(+Nv((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+pz(1.0-j*(f-r));d=+pz(1.0-j*(+g[p>>2]-r));f=+gv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){df(n,f,+g[p+4>>2]-k);Hv(a,n,k,3,6);df(n,f,k+ +g[o+4>>2]);Hv(a,n,k,6,9);break}else{df(n,f,+g[p+4>>2]-k);Iv(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);df(n,f,k+ +g[o+4>>2]);Iv(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{df(n,f,+g[p+4>>2]);ij(a,n);df(n,f,+g[o+4>>2]);ij(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+pz(1.0-j*(r-e));d=+pz(1.0-j*(r-+g[o>>2]));e=+Nv(e,r-k);if(f==d){df(n,e,+g[o+4>>2]);ij(a,n);df(n,e,+g[p+4>>2]);ij(a,n);break}if(f==0.0&d==1.5707963705062866){df(n,e,k+ +g[o+4>>2]);Hv(a,n,k,9,12);df(n,e,+g[p+4>>2]-k);Hv(a,n,k,0,3);break}else{df(n,e,k+ +g[o+4>>2]);Iv(a,n,k,-d,-f,3);df(n,e,+g[p+4>>2]-k);Iv(a,n,k,f,d,3);break}}while(0);rl(a,c)}}l=q;return}function nz(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function oz(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function pz(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function qz(a){a=a|0;return}function rz(){return}function sz(a){a=a|0;return}function tz(){uz();vz();wz();xz();yz();zz();Az();Bz();Cz();Dz();Ez();Fz();Gz();Hz();Iz();Jz();Kz();Lz();return}function uz(){j6(0);return}function vz(){I5(0);return}function wz(){_4(0);return}function xz(){M3(0);return}function yz(){a3(0);return}function zz(){a2(0);return}function Az(){v1(0);return}function Bz(){RZ(0);return}function Cz(){XY(0);return}function Dz(){AY(0);return}function Ez(){vX(0);return}function Fz(){GV(0);return}function Gz(){ZT(0);return}function Hz(){YT(58e3);return}function Iz(){YT(58004);return}function Jz(){YT(57992);return}function Kz(){YT(57996);return}function Lz(){Mz(0);return}function Mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=Nz(30079)|0;if(f>>>0>4294967279)R9(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=P9(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}Oz(b,30079,f)|0;a[d>>0]=0;Pz(b+f|0,d);Qz(30084,e);T9(e);c[d>>2]=20;Rz(30098,d);c[d>>2]=2;Rz(30113,d);c[d>>2]=0;Sz(30127,d);c[d>>2]=8;Sz(30147,d);c[d>>2]=16;Sz(30166,d);h=Uz(10)|0;a[d>>0]=a[g+29>>0]|0;Vz(30186,h,d);h=Uz(11)|0;a[d>>0]=a[g+28>>0]|0;Vz(30192,h,d);h=Uz(12)|0;a[d>>0]=a[g+27>>0]|0;Vz(30201,h,d);Yz(30213,2);Yz(30222,_z(3)|0);Yz(30229,4);Yz(30238,5);bA(30247,aA(13)|0);bA(30262,aA(14)|0);bA(30280,aA(15)|0);gA(30296,fA(16)|0);gA(30314,fA(17)|0);Yz(30331,6);kA(30345,jA(8)|0);Yz(30351,7);nA(30355,mA(1)|0);Yz(30366,8);qA(30375,pA(4)|0);qA(30395,pA(5)|0);sA(30417,1);qA(30444,pA(6)|0);qA(30470,pA(7)|0);sA(30496,2);h=Uz(18)|0;a[d>>0]=a[g+26>>0]|0;Vz(30524,h,d);qA(30542,pA(8)|0);qA(30555,pA(9)|0);sA(30569,3);sA(30584,4);yA(30600,1);yA(30618,2);zA(30636,1);CA(30655,BA(2)|0);FA(30672,EA(10)|0);IA(30690,HA(4)|0);bA(30719,aA(19)|0);KA(30744,11);Yz(30767,9);FA(30786,EA(12)|0);FA(30799,EA(13)|0);KA(30813,OA(14)|0);Yz(30832,_z(10)|0);SA(30847,RA(3)|0);SA(30864,RA(4)|0);WA(30882,VA(5)|0);gA(30905,fA(20)|0);sA(30924,5);sA(30935,6);sA(30946,7);sA(30960,8);zA(30974,2);zA(30985,3);zA(30996,4);YA(31010,1);bA(31028,aA(21)|0);$A(31044,Uz(22)|0);bA(31060,aA(23)|0);Yz(31069,_z(11)|0);eB(31077,dB(15)|0);fB(31092,24);eB(31106,dB(16)|0);fB(31119,25);jB(31131,iB(17)|0);h=Uz(26)|0;a[d>>0]=a[g+25>>0]|0;Vz(31149,h,d);sA(31157,9);qA(31169,pA(18)|0);oB(31192,nB(5)|0);zA(31204,5);Yz(31218,12);sA(31231,10);zA(31245,6);Yz(31261,13);pB(31276,27);Yz(31299,14);pB(31321,28);Yz(31338,15);Yz(31354,16);YA(31364,2);Yz(31373,17);Yz(31381,18);bA(31389,aA(29)|0);zA(31395,7);zA(31402,8);Yz(31411,19);Yz(31422,20);qA(31431,pA(19)|0);sA(31444,11);sA(31458,12);sB(31472,30);zA(31485,9);zA(31499,10);qA(31513,pA(20)|0);qA(31531,pA(21)|0);sB(31550,31);Yz(31569,21);sA(31593,13);sA(31611,14);sA(31640,15);sA(31655,16);xB(31681,wB(6)|0);Yz(31689,22);yB(31700,3);zB(31715,1);AB(31730,1);zB(31745,2);AB(31761,2);yB(31777,4);bA(31793,aA(32)|0);Yz(31800,23);EB(31806,DB(4)|0);gA(31812,fA(33)|0);gA(31828,fA(34)|0);gA(31833,fA(35)|0);KB(31839,JB(22)|0);KB(31851,JB(23)|0);gA(31864,fA(36)|0);gA(31877,fA(37)|0);gA(31891,fA(38)|0);gA(31903,fA(39)|0);SB(31916,RB(24)|0);SB(31926,RB(25)|0);gA(31937,fA(40)|0);gA(31948,fA(41)|0);Yz(31960,24);YB(31967,XB(6)|0);$B(31974,_B(5)|0);YB(31986,XB(7)|0);dC(32002,cC(4)|0);gC(32008,fC(1)|0);YB(32020,XB(8)|0);kC(32029,jC(9)|0);nC(32043,mC(10)|0);qC(32055,pC(1)|0);qC(32065,pC(2)|0);uC(32079,tC(1)|0);kA(32091,jA(11)|0);Yz(32102,25);yC(32111,xC(1)|0);BC(32117,AC(1)|0);EC(32127,DC(2)|0);EC(32138,DC(3)|0);EC(32149,DC(4)|0);JC(32160,IC(1)|0);MC(32176,LC(1)|0);MC(32184,LC(2)|0);MC(32193,LC(3)|0);MC(32202,LC(4)|0);SC(32211,RC(1)|0);h=UC(1)|0;a[d>>0]=a[g+24>>0]|0;VC(32225,h,d);YC(32235,XC(2)|0);$C(32254,_C(1)|0);cD(32265,bD(2)|0);cD(32277,bD(3)|0);cD(32289,bD(4)|0);hD(32301,gD(2)|0);kA(32310,jA(12)|0);kA(32320,jA(13)|0);kA(32330,jA(14)|0);nD(32340,mD(1)|0);nD(32352,mD(2)|0);nD(32365,mD(3)|0);nD(32378,mD(4)|0);tD(32391,sD(1)|0);wD(32403,vD(3)|0);wD(32413,vD(4)|0);wD(32424,vD(5)|0);wD(32435,vD(6)|0);CD(32446,BD(1)|0);FD(32459,ED(2)|0);kA(32470,jA(15)|0);kA(32481,jA(16)|0);kA(32492,jA(17)|0);LD(32505,KD(5)|0);LD(32518,KD(6)|0);fB(32530,42);PD(32550,OD(9)|0);SD(32559,RD(18)|0);bA(32570,aA(43)|0);Yz(32579,26);Yz(32587,27);sA(32609,17);KA(32635,26);kA(32655,jA(19)|0);LD(32672,KD(7)|0);yC(32683,xC(7)|0);YB(32691,XB(10)|0);Yz(32705,28);_D(32719,ZD(27)|0);gA(32725,fA(44)|0);Yz(32736,29);Yz(32749,30);yA(32760,5);Yz(32777,31);yA(32792,6);Yz(32805,32);cE(32816,bE(11)|0);Yz(32826,33);fE(32834,eE(8)|0);gA(32843,fA(45)|0);jE(32853,iE(12)|0);$B(32874,_B(6)|0);kA(32885,jA(20)|0);jE(32901,iE(13)|0);pE(32923,oE(21)|0);jE(32947,iE(14)|0);Yz(32969,34);$B(32978,_B(7)|0);Yz(32990,35);fB(33008,46);eB(33017,dB(28)|0);fB(33027,47);Yz(33042,36);Yz(33052,37);gA(33063,fA(48)|0);uE(33071,15);xE(33091,wE(9)|0);Yz(33110,38);yA(33128,7);AE(33148,zE(7)|0);Yz(33170,39);DE(33188,CE(8)|0);Yz(33201,40);h=FE(49)|0;a[d>>0]=a[g+23>>0]|0;GE(33213,h,d);h=FE(50)|0;a[d>>0]=a[g+22>>0]|0;GE(33232,h,d);h=FE(51)|0;a[d>>0]=a[g+21>>0]|0;GE(33248,h,d);Yz(33265,41);fB(33285,52);JE(33306,8);yA(33320,8);JE(33333,9);yA(33347,9);yA(33361,10);yA(33378,11);qA(33394,pA(29)|0);qA(33409,pA(30)|0);qA(33424,pA(31)|0);Yz(33440,42);JE(33460,10);JE(33476,11);yA(33492,12);yA(33511,13);PE(33530,OE(16)|0);sA(33544,18);yB(33552,14);h=Uz(53)|0;a[d>>0]=a[g+20>>0]|0;Vz(33566,h,d);h=Uz(54)|0;a[d>>0]=a[g+19>>0]|0;Vz(33585,h,d);UE(33607,TE(32)|0);XE(33625,WE(1)|0);_E(33650,ZE(1)|0);bF(33663,aF(1)|0);cF(33680,22);Yz(33696,43);fF(33710,eF(9)|0);gF(33734,12);jF(33758,iF(1)|0);jF(33779,iF(2)|0);lF(33800,13);JE(33812,14);mF(33822,17);JE(33835,15);nF(33849,1);JE(33869,16);mF(33881,18);JE(33896,17);JE(33917,18);oF(33933,1);rF(33949,qF(23)|0);uF(33969,tF(19)|0);qA(33985,pA(33)|0);qA(33997,pA(34)|0);zF(34030,yF(1)|0);fB(34048,55);yB(34068,15);fB(34083,56);pB(34098,57);pB(34121,58);h=BF(35)|0;a[d>>0]=a[g+18>>0]|0;CF(34141,h,d);bA(34150,aA(59)|0);GF(34158,FF(60)|0);bA(34175,aA(61)|0);GF(34192,FF(62)|0);h=Uz(63)|0;a[d>>0]=a[g+17>>0]|0;Vz(34203,h,d);bA(34217,aA(64)|0);h=Uz(65)|0;a[d>>0]=a[g+16>>0]|0;Vz(34232,h,d);bA(34250,aA(66)|0);l=g;return}function Nz(a){a=a|0;return c8(a)|0}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Zaa(a|0,b|0,c|0)|0;return a|0}function Pz(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Qz(a,b){a=a|0;b=b|0;var c=0;c=VT()|0;Wb(a|0,c|0,WT(tG(b)|0)|0);return}function Rz(a,b){a=a|0;b=b|0;var c=0;c=ST()|0;Wb(a|0,c|0,TT(xI(b)|0)|0);return}function Sz(a,b){a=a|0;b=b|0;var c=0;c=fI()|0;Wb(a|0,c|0,RT(RH(b)|0)|0);return}function Tz(a){a=a|0;JT(a);return}function Uz(a){a=a|0;return a|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=HT(d)|0;d=IT(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function Wz(a){a=a|0;zT(a);return}function Xz(a){a=a|0;rT(a);return}function Yz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=nT(d)|0;Zb(a|0,e|0,d|0,oT()|0,67,b|0);l=c;return}function Zz(){lT();return}function _z(a){a=a|0;return a|0}function $z(a){a=a|0;kT(a);return}function aA(a){a=a|0;return a|0}function bA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Zb(a|0,e|0,d|0,RJ()|0,36,b|0);l=c;return}function cA(a){a=a|0;fT(a);return}function dA(a){a=a|0;$S(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return a|0}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XS(d)|0;d=YS(d)|0;Zb(a|0,e|0,d|0,RJ()|0,37,b|0);l=c;return}function hA(a){a=a|0;return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return WS(a,b,c)|0}function jA(a){a=a|0;return a|0}function kA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SS(d)|0;d=TS(d)|0;Zb(a|0,e|0,d|0,DH()|0,10,b|0);l=c;return}function lA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return RS(a,b,c,d)|0}function mA(a){a=a|0;return a|0}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=OS(d)|0;Zb(a|0,e|0,d|0,hK()|0,8,b|0);l=c;return}function oA(a,b){a=a|0;b=b|0;MS(a,b);return}function pA(a){a=a|0;return a|0}function qA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IS(d)|0;d=JS(d)|0;Zb(a|0,e|0,d|0,EG()|0,19,b|0);l=c;return}function rA(a,b){a=a|0;b=b|0;HS(a,b);return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ES(d)|0;d=xH(d)|0;Zb(a|0,e|0,d|0,FS()|0,3,b|0);l=c;return}function tA(a,b){a=a|0;b=b|0;DS(a,b);return}function uA(a,b){a=a|0;b=b|0;CS(a,b);return}function vA(a){a=a|0;BS(a);return}function wA(a,b){a=a|0;b=b|0;AS(a,b);return}function xA(a,b){a=a|0;b=b|0;zS(a,b);return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xS(d)|0;d=IK(d)|0;Zb(a|0,e|0,d|0,rG()|0,21,b|0);l=c;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sS(d)|0;d=tS(d)|0;Zb(a|0,e|0,d|0,uS()|0,3,b|0);l=c;return}function AA(a,b,c){a=a|0;b=b|0;c=c|0;rS(a,b,c);return}function BA(a){a=a|0;return a|0}function CA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nS(d)|0;d=oS(d)|0;Zb(a|0,e|0,d|0,YJ()|0,5,b|0);l=c;return}function DA(a,b){a=a|0;b=b|0;mS(a,b);return}function EA(a){a=a|0;return a|0}function FA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iS(d)|0;d=jS(d)|0;Zb(a|0,e|0,d|0,eL()|0,10,b|0);l=c;return}function GA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ZR(a,b,c,d);return}function HA(a){a=a|0;return a|0}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UR(d)|0;d=VR(d)|0;Zb(a|0,e|0,d|0,WR()|0,4,b|0);l=c;return}function JA(a){a=a|0;TR(a);return}function KA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Zb(a|0,e|0,d|0,eL()|0,11,b|0);l=c;return}function LA(a,b){a=a|0;b=b|0;OR(a,b);return}function MA(a,b){a=a|0;b=b|0;NR(a,b);return}function NA(a,b){a=a|0;b=b|0;MR(a,b);return}function OA(a){a=a|0;return a|0}function PA(){LR();return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;KR(a,b,c);return}function RA(a){a=a|0;return a|0}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GR(d)|0;d=HR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,6,b|0);l=c;return}function TA(a,b,c){a=a|0;b=b|0;c=c|0;FR(a,b,c);return}function UA(a,b,c){a=a|0;b=b|0;c=c|0;ER(a,b,c);return}function VA(a){a=a|0;return a|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AR(d)|0;d=BR(d)|0;Zb(a|0,e|0,d|0,YJ()|0,7,b|0);l=c;return}function XA(a){a=a|0;zR(a);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uR(d)|0;d=vR(d)|0;Zb(a|0,e|0,d|0,wR()|0,1,b|0);l=c;return}function ZA(a){a=a|0;tR();return}function _A(a){a=a|0;sR(a);return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oR(d)|0;d=pR(d)|0;Zb(a|0,e|0,d|0,rG()|0,20,b|0);l=c;return}function aB(a){a=a|0;nR();return}function bB(){mR();return}function cB(a,b){a=a|0;b=b|0;lR(a,b);return}function dB(a){a=a|0;return a|0}function eB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=hR(d)|0;d=iR(d)|0;Zb(a|0,e|0,d|0,eL()|0,12,b|0);l=c;return}function fB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dR(d)|0;d=eR(d)|0;Zb(a|0,e|0,d|0,RJ()|0,38,b|0);l=c;return}function gB(a,b){a=a|0;b=b|0;cR(a,b);return}function hB(a,b){a=a|0;b=b|0;WQ(a,b);return}function iB(a){a=a|0;return a|0}function jB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SQ(d)|0;d=TQ(d)|0;Zb(a|0,e|0,d|0,EG()|0,20,b|0);l=c;return}function kB(a){a=a|0;KQ(a);return}function lB(a,b){a=a|0;b=b|0;JQ(a,b);return}function mB(a,b){a=a|0;b=b|0;return IQ(a,b)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EQ(d)|0;d=FQ(d)|0;Zb(a|0,e|0,d|0,VH()|0,24,b|0);l=c;return}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AQ(d)|0;d=BQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,39,b|0);l=c;return}function qB(a){a=a|0;zQ(a);return}function rB(a,b){a=a|0;b=b|0;yQ(a,b);return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=uQ(d)|0;d=vQ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,40,b|0);l=c;return}function tB(a,b){a=a|0;b=b|0;tQ(a,b);return}function uB(a,b){a=a|0;b=b|0;sQ(a,b);return}function vB(a,b,c){a=a|0;b=b|0;c=c|0;rQ(a,b,c);return}function wB(a){a=a|0;return a|0}function xB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,8,b|0);l=c;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lQ(d)|0;d=qL(d)|0;Zb(a|0,e|0,d|0,rG()|0,22,b|0);l=c;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gQ(d)|0;d=hQ(d)|0;Zb(a|0,e|0,d|0,iQ()|0,1,b|0);l=c;return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bQ(d)|0;d=cQ(d)|0;Zb(a|0,e|0,d|0,dQ()|0,1,b|0);l=c;return}function BB(a){a=a|0;aQ(a);return}function CB(a){a=a|0;return $P(a)|0}function DB(a){a=a|0;return a|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XP(d)|0;d=YP(d)|0;Zb(a|0,e|0,d|0,EG()|0,21,b|0);l=c;return}function FB(a){a=a|0;WP(a);return}function GB(a){a=a|0;VP(a);return}function HB(a){a=a|0;UP(a);return}function IB(a,b){a=a|0;b=b|0;TP(a,b);return}function JB(a){a=a|0;return a|0}function KB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PP(d)|0;d=QP(d)|0;Zb(a|0,e|0,d|0,eL()|0,13,b|0);l=c;return}function LB(a,b){a=a|0;b=b|0;OP(a,b);return}function MB(a){a=a|0;NP(a);return}function NB(a){a=a|0;MP(a);return}function OB(a){a=a|0;LP(a);return}function PB(a){a=a|0;KP(a);return}function QB(a,b){a=a|0;b=b|0;JP(a,b);return}function RB(a){a=a|0;return a|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FP(d)|0;d=GP(d)|0;Zb(a|0,e|0,d|0,eL()|0,14,b|0);l=c;return}function TB(a,b){a=a|0;b=b|0;EP(a,b);return}function UB(a){a=a|0;DP(a);return}function VB(a){a=a|0;CP(a);return}function WB(a,b){a=a|0;b=b|0;return BP(a,b)|0}function XB(a){a=a|0;return a|0}function YB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xP(d)|0;d=yP(d)|0;Zb(a|0,e|0,d|0,VH()|0,25,b|0);l=c;return}function ZB(a){a=a|0;return wP(a)|0}function _B(a){a=a|0;return a|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Zb(a|0,e|0,d|0,EG()|0,22,b|0);l=c;return}function aC(a,b){a=a|0;b=b|0;return rP(a,b)|0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qP(b,c,d,e,f);return}function cC(a){a=a|0;return a|0}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lP(d)|0;d=mP(d)|0;Zb(a|0,e|0,d|0,nP()|0,1,b|0);l=c;return}function eC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return kP(b,c,d,e,f,g)|0}function fC(a){a=a|0;return a|0}function gC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gP(d)|0;d=hP(d)|0;Zb(a|0,e|0,d|0,WM()|0,1,b|0);l=c;return}function hC(a,b){a=a|0;b=b|0;return fP(a,b)|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;return VO(a,b,c)|0}function jC(a){a=a|0;return a|0}function kC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RO(d)|0;d=SO(d)|0;Zb(a|0,e|0,d|0,DH()|0,11,b|0);l=c;return}function lC(a,b,c){a=a|0;b=b|0;c=c|0;return QO(a,b,c)|0}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MO(d)|0;d=NO(d)|0;Zb(a|0,e|0,d|0,DH()|0,12,b|0);l=c;return}function oC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;JO(a,b,c,d,e,f,g,h,i);return}function pC(a){a=a|0;return a|0}function qC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EO(d)|0;d=FO(d)|0;Zb(a|0,e|0,d|0,GO()|0,1,b|0);l=c;return}function rC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;sO(a,b,c,d,e,f,g,h,i);return}function sC(a,b,c){a=+a;b=b|0;c=c|0;rO(a,b,c);return}function tC(a){a=a|0;return a|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mO(d)|0;d=nO(d)|0;Zb(a|0,e|0,d|0,oO()|0,2,b|0);l=c;return}function vC(a,b,c){a=a|0;b=b|0;c=c|0;return lO(a,b,c)|0}function wC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iO(a,b,c,d,e)|0}function xC(a){a=a|0;return a|0}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eO(d)|0;d=fO(d)|0;Zb(a|0,e|0,d|0,gM()|0,3,b|0);l=c;return}function zC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return dO(a,b,c,d,e,f,g)|0}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$N(d)|0;d=aO(d)|0;Zb(a|0,e|0,d|0,XN()|0,1,b|0);l=c;return}function CC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function DC(a){a=a|0;return a|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VN(d)|0;d=WN(d)|0;Zb(a|0,e|0,d|0,XN()|0,2,b|0);l=c;return}function FC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return UN(a,b,c,d,e,f,g)|0}function GC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return TN(a,b,c,d,e,f,g)|0}function HC(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return SN(a,b,c,d,e,f,g,h,i)|0}function IC(a){a=a|0;return a|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NN(d)|0;d=ON(d)|0;Zb(a|0,e|0,d|0,PN()|0,1,b|0);l=c;return}function KC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function LC(a){a=a|0;return a|0}function MC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HN(d)|0;d=IN(d)|0;Zb(a|0,e|0,d|0,JN()|0,1,b|0);l=c;return}function NC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return GN(a,b,c,d,e,f)|0}function OC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return FN(a,b,c,d,e,f)|0}function PC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return EN(a,b,c,d,e,f)|0}function QC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return DN(a,b,c,d,e,f,g,h)|0}function RC(a){a=a|0;return a|0}function SC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Zb(a|0,e|0,d|0,AN()|0,1,b|0);l=c;return}function TC(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 vN(a,b,c,d,e,f)|0}function UC(a){a=a|0;return a|0}function VC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=rN(d)|0;d=sN(d)|0;Zb(a|0,e|0,d|0,TL()|0,3,b|0);l=c;return}function WC(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ZM(a,b,c,d,e,f,g)|0}function XC(a){a=a|0;return a|0}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UM(d)|0;d=VM(d)|0;Zb(a|0,e|0,d|0,WM()|0,2,b|0);l=c;return}function ZC(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return TM(a,b,c,d,e,f)|0}function _C(a){a=a|0;return a|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=OM(d)|0;d=PM(d)|0;Zb(a|0,e|0,d|0,QM()|0,1,b|0);l=c;return}function aD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NM(a,b,c,d)|0}function bD(a){a=a|0;return a|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Zb(a|0,e|0,d|0,hK()|0,9,b|0);l=c;return}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return IM(a,b,c,d)|0}function eD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HM(a,b,c,d)|0}function fD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return GM(a,b,c,d,e)|0}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CM(d)|0;d=DM(d)|0;Zb(a|0,e|0,d|0,gM()|0,4,b|0);l=c;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;return BM(a,b,c)|0}function jD(a,b,c){a=a|0;b=b|0;c=c|0;return AM(a,b,c)|0}function kD(a,b,c){a=a|0;b=b|0;c=c|0;return zM(a,b,c)|0}function lD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function mD(a){a=a|0;return a|0}function nD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tM(d)|0;d=uM(d)|0;Zb(a|0,e|0,d|0,vM()|0,2,b|0);l=c;return}function oD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return sM(a,b,c,d,e,f)|0}function pD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return rM(a,b,c,d,e,f)|0}function qD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return qM(a,b,c,d,e,f)|0}function rD(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return pM(a,b,c,d)|0}function sD(a){a=a|0;return a|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=kM(d)|0;d=lM(d)|0;Zb(a|0,e|0,d|0,mM()|0,1,b|0);l=c;return}function uD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function vD(a){a=a|0;return a|0}function wD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=eM(d)|0;d=fM(d)|0;Zb(a|0,e|0,d|0,gM()|0,5,b|0);l=c;return}function xD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return dM(a,b,c,d,e)|0}function yD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return cM(a,b,c,d,e)|0}function zD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return bM(a,b,c,d,e)|0}function AD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return aM(a,b,c,d,e,f,g)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=XL(d)|0;d=YL(d)|0;Zb(a|0,e|0,d|0,ZL()|0,1,b|0);l=c;return}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;return WL(a,b,c,d,e,f)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RL(d)|0;d=SL(d)|0;Zb(a|0,e|0,d|0,TL()|0,4,b|0);l=c;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;return QL(a,b,c)|0}function HD(a,b,c){a=a|0;b=b|0;c=c|0;return PL(a,b,c)|0}function ID(a,b,c){a=a|0;b=b|0;c=c|0;return OL(a,b,c)|0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return NL(a,b,c)|0}function KD(a){a=a|0;return a|0}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Zb(a|0,e|0,d|0,hK()|0,10,b|0);l=c;return}function MD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return HL(a,b,c,d)|0}function ND(a,b){a=a|0;b=b|0;return GL(a,b)|0}function OD(a){a=a|0;return a|0}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CL(d)|0;d=DL(d)|0;Zb(a|0,e|0,d|0,VH()|0,26,b|0);l=c;return}function QD(a,b,c){a=a|0;b=b|0;c=c|0;return BL(a,b,c)|0}function RD(a){a=a|0;return a|0}function SD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xL(d)|0;d=yL(d)|0;Zb(a|0,e|0,d|0,DH()|0,13,b|0);l=c;return}function TD(a){a=a|0;wL(a);return}function UD(a,b,c){a=a|0;b=b|0;c=c|0;return vL(a,b,c)|0}function VD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uL(a,b,c,d)|0}function WD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return lL(a,b,c,d,e)|0}function XD(a,b){a=a|0;b=b|0;return kL(a,b)|0}function YD(a,b){a=a|0;b=b|0;hL(a,b);return}function ZD(a){a=a|0;return a|0}function _D(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cL(d)|0;d=dL(d)|0;Zb(a|0,e|0,d|0,eL()|0,15,b|0);l=c;return}function $D(a){a=a|0;bL(a);return}function aE(a,b){a=a|0;b=b|0;return aL(a,b)|0}function bE(a){a=a|0;return a|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YK(d)|0;d=ZK(d)|0;Zb(a|0,e|0,d|0,VH()|0,27,b|0);l=c;return}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return XK(a,b,c,d)|0}function eE(a){a=a|0;return a|0}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TK(d)|0;d=UK(d)|0;Zb(a|0,e|0,d|0,hK()|0,11,b|0);l=c;return}function gE(a){a=a|0;SK(a);return}function hE(a,b){a=a|0;b=b|0;return RK(a,b)|0}function iE(a){a=a|0;return a|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NK(d)|0;d=OK(d)|0;Zb(a|0,e|0,d|0,VH()|0,28,b|0);l=c;return}function kE(a){a=a|0;return MK(a)|0}function lE(a,b,c){a=a|0;b=b|0;c=c|0;return zK(a,b,c)|0}function mE(a,b){a=a|0;b=b|0;return yK(a,b)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return xK(a,b,c)|0}function oE(a){a=a|0;return a|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tK(d)|0;d=uK(d)|0;Zb(a|0,e|0,d|0,DH()|0,14,b|0);l=c;return}function qE(a,b){a=a|0;b=b|0;return sK(a,b)|0}function rE(a){a=a|0;return rK(a)|0}function sE(a,b){a=a|0;b=b|0;qK(a,b);return}function tE(a){a=a|0;pK(a);return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lK(d)|0;d=mK(d)|0;Zb(a|0,e|0,d|0,VH()|0,29,b|0);l=c;return}function vE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kK();return 0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fK(d)|0;d=gK(d)|0;Zb(a|0,e|0,d|0,hK()|0,12,b|0);l=c;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;eK(a);return}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Zb(a|0,e|0,d|0,VH()|0,30,b|0);l=c;return}function BE(a,b,c){a=a|0;b=b|0;c=c|0;$J(a,b,c);return}function CE(a){a=a|0;return a|0}function DE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WJ(d)|0;d=XJ(d)|0;Zb(a|0,e|0,d|0,YJ()|0,9,b|0);l=c;return}function EE(a){a=a|0;VJ(a);return}function FE(a){a=a|0;return a|0}function GE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Zb(a|0,e|0,d|0,RJ()|0,41,b|0);l=c;return}function HE(a){a=a|0;OJ(a);return}function IE(a){a=a|0;NJ(a);return}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JJ(d)|0;d=KJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,23,b|0);l=c;return}function KE(a,b){a=a|0;b=b|0;IJ(a,b);return}function LE(a,b){a=a|0;b=b|0;HJ(a,b);return}function ME(a,b){a=a|0;b=b|0;GJ(a,b);return}function NE(a,b){a=a|0;b=b|0;return EJ(a,b)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AJ(d)|0;d=BJ(d)|0;Zb(a|0,e|0,d|0,VH()|0,31,b|0);l=c;return}function QE(a){a=a|0;sJ(a);return}function RE(a){a=a|0;kJ(a);return}function SE(a,b){a=a|0;b=b|0;jJ(a,b);return}function TE(a){a=a|0;return a|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fJ(d)|0;d=gJ(d)|0;Zb(a|0,e|0,d|0,EG()|0,24,b|0);l=c;return}function VE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;eJ(a,b,c,d,e);return}function WE(a){a=a|0;return a|0}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$I(d)|0;d=aJ(d)|0;Zb(a|0,e|0,d|0,bJ()|0,1,b|0);l=c;return}function YE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;_I(a,b,d,e,f);return}function ZE(a){a=a|0;return a|0}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VI(d)|0;d=WI(d)|0;Zb(a|0,e|0,d|0,XI()|0,1,b|0);l=c;return}function $E(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;PI(a,b,c,d);return}function aF(a){a=a|0;return a|0}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=KI(d)|0;d=LI(d)|0;Zb(a|0,e|0,d|0,MI()|0,1,b|0);l=c;return}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FI(d)|0;d=GI(d)|0;Zb(a|0,e|0,d|0,DH()|0,15,b|0);l=c;return}function dF(a,b,c){a=a|0;b=b|0;c=c|0;DI(a,b,c);return}function eF(a){a=a|0;return a|0}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zI(d)|0;d=AI(d)|0;Zb(a|0,e|0,d|0,VH()|0,32,b|0);l=c;return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tI(d)|0;d=uI(d)|0;Zb(a|0,e|0,d|0,EG()|0,25,b|0);l=c;return}function hF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;sI(a,b,c,d,e,f);return}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nI(d)|0;d=oI(d)|0;Zb(a|0,e|0,d|0,pI()|0,1,b|0);l=c;return}function kF(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;aI(a,b,c,d,e,f);return}function lF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YH(d)|0;d=ZH(d)|0;Zb(a|0,e|0,d|0,EG()|0,26,b|0);l=c;return}function mF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TH(d)|0;d=UH(d)|0;Zb(a|0,e|0,d|0,VH()|0,33,b|0);l=c;return}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NH(d)|0;d=OH(d)|0;Zb(a|0,e|0,d|0,PH()|0,2,b|0);l=c;return}function oF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=IH(d)|0;d=JH(d)|0;Zb(a|0,e|0,d|0,KH()|0,1,b|0);l=c;return}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return HH(a,b,c)|0}function qF(a){a=a|0;return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BH(d)|0;d=CH(d)|0;Zb(a|0,e|0,d|0,DH()|0,16,b|0);l=c;return}function sF(a){a=a|0;return tH(a)|0}function tF(a){a=a|0;return a|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=oH(d)|0;d=pH(d)|0;Zb(a|0,e|0,d|0,EG()|0,27,b|0);l=c;return}function vF(a,b){a=a|0;b=b|0;nH(a,b);return}function wF(a,b){a=a|0;b=b|0;mH(a,b);return}function xF(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$G(a,b,c,d);return}function yF(a){a=a|0;return a|0}function zF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=SG(d)|0;d=TG(d)|0;Zb(a|0,e|0,d|0,UG()|0,1,b|0);l=c;return}function AF(a,b){a=a|0;b=b|0;KG(a,b);return}function BF(a){a=a|0;return a|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=CG(d)|0;d=DG(d)|0;Zb(a|0,e|0,d|0,EG()|0,28,b|0);l=c;return}function DF(a){a=a|0;vG(a);return}function EF(a){a=a|0;uG(a);return}function FF(a){a=a|0;return a|0}function GF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qG(d)|0;d=lG(d)|0;Zb(a|0,e|0,d|0,rG()|0,23,b|0);l=c;return}function HF(a){a=a|0;jG(a);return}function IF(a){a=a|0;iG(a);return}function JF(a){a=a|0;hG(a);return}function KF(a){a=a|0;gG(a);return}function LF(a){a=a|0;XF(a);return}function MF(a){a=a|0;NF(a);return}function NF(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}wh(c);l=d;return}function OF(a){a=a|0;return (c[a>>2]|0)==2|0}function PF(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(QF(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=SF(f)|0;TF(e);l=d;return b|0}function QF(a){a=a|0;return WF()|0}function RF(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function SF(a){a=+a;return VF(UF(a)|0)|0}function TF(a){a=a|0;nc(c[a>>2]|0);return}function UF(a){a=+a;return ~~a>>>0|0}function VF(a){a=a|0;return a|0}function WF(){return 1496}function XF(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function YF(a){a=a|0;fG(a,2);return}function ZF(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;_F(e,b);b=$F()|0;c[a>>2]=pc(b|0,aG(e)|0)|0;l=d;return}function _F(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;dG(e,cG(c[b>>2]|0)|0);eG(e);l=d;return}function $F(){return bG()|0}function aG(a){a=a|0;return a|0}function bG(){return 8}function cG(a){a=a|0;return a|0}function dG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function eG(a){a=a|0;return}function fG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function gG(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(OF(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=PF(b,c)|0}yh(c);l=d;return}function hG(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0,0)|0;c[b>>2]=e;if(!e)YF(a);else ZF(a,b);l=d;return}function iG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function jG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;kG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e);l=d;return}function kG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+dc(b|0,c[(lG(d+8|0)|0)>>2]|0,g|0);RF(e,c[g>>2]|0);mG(a,f);TF(e);l=d;return}function lG(a){a=a|0;return pG()|0}function mG(a,b){a=a|0;b=+b;oG(a,nG(b)|0);return}function nG(a){a=+a;return ~~a>>>0|0}function oG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,d+4|0,f)|0;a[e>>0]=0;Pz(b+f|0,e);l=g;return}function pG(){return 1500}function qG(a){a=a|0;return 1}function rG(){return 34400}function sG(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=tG(c)|0;T9(c);l=b;return a|0}function tG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=D7(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=D7(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;Zaa(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function uG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=P9(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}Oz(b,e,f)|0;a[d>>0]=0;Pz(b+f|0,d);l=g;return}function vG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;_f(wG(b,d)|0);l=c;return}function wG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+dc(a|0,c[(xG(d+8|0)|0)>>2]|0,b|0);RF(e,c[b>>2]|0);b=yG(f)|0;TF(e);l=d;return b|0}function xG(a){a=a|0;return BG()|0}function yG(a){a=+a;return AG(zG(a)|0)|0}function zG(a){a=+a;return ~~a>>>0|0}function AG(a){a=a|0;return a|0}function BG(){return 1504}function CG(a){a=a|0;return 2}function DG(a){a=a|0;return JG()|0}function EG(){return 34403}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=GG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function GG(a){a=a|0;return a|0}function HG(a){a=a|0;ic(c[a>>2]|0);return c[a>>2]|0}function IG(a){a=a|0;fc(c[a>>2]|0);return}function JG(){return 1508}function KG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Bf(b)|0;LG(a,e);l=d;return}function LG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MG(e,b);b=NG()|0;c[a>>2]=pc(b|0,OG(e)|0)|0;l=d;return}function MG(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RG(e,QG(c[b>>2]|0)|0);eG(e);l=d;return}function NG(){return PG()|0}function OG(a){a=a|0;return a|0}function PG(){return 840}function QG(a){a=a|0;return a|0}function RG(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SG(a){a=a|0;return 4}function TG(a){a=a|0;return _G()|0}function UG(){return 34426}function VG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=WG(b)|0;c=+XG(c);YG(f,d);qe[a&1](g,b,c,f);d=HG(g)|0;IG(g);IG(f);l=e;return d|0}function WG(a){a=a|0;return a|0}function XG(a){a=+a;return +a}function YG(a,b){a=a|0;b=b|0;ZG(a,b);return}function ZG(a,b){a=a|0;b=b|0;fG(a,b);return}function _G(){return 1516}function $G(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Ej(g,b,c);aH(f,d);bH(a,g,f);IG(f);l=e;return}function aH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;ic(b|0);return}function bH(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);dH(a,c);return}function cH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;eH(f,b);b=c[f>>2]|0;fH(g,d);oc(a|0,b|0,c[g>>2]|0);IG(g);IG(f);l=e;return}function dH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function eH(a,b){a=a|0;b=b|0;c[a>>2]=kc(b|0)|0;return}function fH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gH(e,b);b=hH()|0;c[a>>2]=pc(b|0,iH(e)|0)|0;l=d;return}function gH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function hH(){return jH()|0}function iH(a){a=a|0;return a|0}function jH(){return 944}function kH(a){a=a|0;return +(+g[a>>2])}function lH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Cj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function nH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Bj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function oH(a){a=a|0;return 2}function pH(a){a=a|0;return sH()|0}function qH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;YG(d,b);b=rH(Cd[a&63](d)|0)|0;IG(d);l=c;return b|0}function rH(a){a=a|0;return a|0}function sH(){return 1532}function tH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(OF(a)|0)a=Oh(0)|0;else{uH(b,a);a=Oh(b)|0}l=c;return a|0}function uH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;vH(f,b,34432);e=+wH(f);IG(f);vH(f,b,34434);d=+wH(f);IG(f);df(a,e,d);l=c;return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;eH(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function wH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+dc(a|0,c[(xH(d+8|0)|0)>>2]|0,f|0);RF(e,c[f>>2]|0);b=+yH(b);TF(e);l=d;return +b}function xH(a){a=a|0;return AH()|0}function yH(a){a=+a;return +(+XG(+zH(a)))}function zH(a){a=+a;return +a}function AH(){return 1540}function BH(a){a=a|0;return 4}function CH(a){a=a|0;return GH()|0}function DH(){return 34436}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;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);IG(f);l=e;return d|0}function FH(a){a=a|0;return a|0}function GH(){return 1544}function HH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);c=hh(f,e,c)|0;l=d;return c|0}function IH(a){a=a|0;return 3}function JH(a){a=a|0;return MH()|0}function KH(){return 34442}function LH(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);return rH(Dd[a&1](b,c)|0)|0}function MH(){return 1560}function NH(a){a=a|0;return 4}function OH(a){a=a|0;return SH()|0}function PH(){return 34447}function QH(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=WG(b)|0;d=+XG(d);e=+XG(e);c[g>>2]=Ed[a&3](b,d,e)|0;b=RH(g)|0;l=f;return b|0}function RH(a){a=a|0;return c[a>>2]|0}function SH(){return 1572}function TH(a){a=a|0;return 3}function UH(a){a=a|0;return XH()|0}function VH(){return 34453}function WH(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=FH(c)|0;return rH(Gd[a&63](b,c)|0)|0}function XH(){return 1588}function YH(a){a=a|0;return 2}function ZH(a){a=a|0;return $H()|0}function _H(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;c[e>>2]=Cd[a&63](b)|0;b=RH(e)|0;l=d;return b|0}function $H(){return 1600}function aI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Xf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function bI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jI(e,b);b=kI()|0;c[a>>2]=pc(b|0,lI(e)|0)|0;l=d;return}function cI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;dI(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;eI(e,b);b=fI()|0;c[a>>2]=pc(b|0,gI(e)|0)|0;l=d;return}function eI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function fI(){return hI()|0}function gI(a){a=a|0;return a|0}function hI(){return 912}function iI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function jI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lH(e,+kH(b));eG(e);l=d;return}function kI(){return mI()|0}function lI(a){a=a|0;return a|0}function mI(){return 944}function nI(a){a=a|0;return 7}function oI(a){a=a|0;return rI()|0}function pI(){return 34458}function qI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+XG(b);c=+XG(c);d=+XG(d);YG(i,e);YG(j,f);YG(k,g);he[a&3](b,c,d,i,j,k);IG(k);IG(j);IG(i);l=h;return}function rI(){return 1608}function sI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Vf(a,b,d,n,m,k);c[j>>2]=0;bI(i,n);cI(e,j,i);IG(i);c[j>>2]=0;bI(i,m);cI(f,j,i);IG(i);c[j>>2]=0;bI(i,k);cI(g,j,i);IG(i);l=h;return}function tI(a){a=a|0;return 2}function uI(a){a=a|0;return yI()|0}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=wI(b)|0;c[e>>2]=Cd[a&63](b)|0;b=xI(e)|0;l=d;return b|0}function wI(a){a=a|0;return a|0}function xI(a){a=a|0;return c[a>>2]|0}function yI(){return 1636}function zI(a){a=a|0;return 3}function AI(a){a=a|0;return CI()|0}function BI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=GG(b)|0;YG(e,c);ue[a&63](f,b,e);c=HG(f)|0;IG(f);IG(e);l=d;return c|0}function CI(){return 1644}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Nf(f,b);aH(e,c);EI(a,f,e);IG(e);l=d;return}function EI(a,b,c){a=a|0;b=b|0;c=c|0;cH(c,34432,b);cH(c,34434,b+4|0);cH(c,34475,b+8|0);cH(c,34477,b+12|0);dH(a,c);return}function FI(a){a=a|0;return 4}function GI(a){a=a|0;return JI()|0}function HI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=GG(b)|0;c=II(c)|0;d=WG(d)|0;return rH(Od[a&63](b,c,d)|0)|0}function II(a){a=a|0;return a|0}function JI(){return 1656}function KI(a){a=a|0;return 5}function LI(a){a=a|0;return OI()|0}function MI(){return 34487}function NI(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=WG(b)|0;c=+XG(c);YG(g,d);YG(h,e);ne[a&3](b,c,g,h);IG(h);IG(g);l=f;return}function OI(){return 1672}function PI(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;yg(a,b,j,i);c[h>>2]=0;QI(g,j);cI(d,h,g);IG(g);c[h>>2]=0;QI(g,i);cI(e,h,g);IG(g);l=f;return}function QI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RI(e,b);b=SI()|0;c[a>>2]=pc(b|0,TI(e)|0)|0;l=d;return}function RI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;iI(e,RH(b)|0);eG(e);l=d;return}function SI(){return UI()|0}function TI(a){a=a|0;return a|0}function UI(){return 912}function VI(a){a=a|0;return 6}function WI(a){a=a|0;return ZI()|0}function XI(){return 34494}function YI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);d=FH(d)|0;e=+XG(e);YG(j,f);Ce[a&3](k,h,i,d,e,j);f=HG(k)|0;IG(k);IG(j);IG(i);T9(h);l=g;return f|0}function ZI(){return 1692}function _I(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;cj(h,d,0,e,f);aH(i,g);bH(b,h,i);IG(i);l=j;return}function $I(a){a=a|0;return 5}function aJ(a){a=a|0;return dJ()|0}function bJ(){return 34502}function cJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;i=f+8|0;g=f+4|0;h=f;YG(g,b);c=FH(c)|0;d=+XG(d);YG(h,e);we[a&1](i,g,c,d,h);e=HG(i)|0;IG(i);IG(h);IG(g);l=f;return e|0}function dJ(){return 1716}function eJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+32|0;h=f+16|0;i=f+8|0;g=f;uH(i,b);Tj(h,i,c,d);aH(g,e);bH(a,h,g);IG(g);l=f;return}function fJ(a){a=a|0;return 2}function gJ(a){a=a|0;return iJ()|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=tG(d)|0;T9(d);l=c;return b|0}function iJ(){return 1736}function jJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=pm(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=Nz(e)|0;if(f>>>0>4294967279)R9(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=P9(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}Oz(d,e,f)|0;a[g>>0]=0;Pz(d+f|0,g);l=h;return}function kJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Fh()|0;lJ(a,d);l=b;return}function lJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mJ(e,b);b=nJ()|0;c[a>>2]=pc(b|0,oJ(e)|0)|0;l=d;return}function mJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rJ(e,qJ(c[b>>2]|0)|0);eG(e);l=d;return}function nJ(){return pJ()|0}function oJ(a){a=a|0;return a|0}function pJ(){return 88}function qJ(a){a=a|0;return a|0}function rJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;tJ(a,d);l=b;return}function tJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;uJ(e,b);b=vJ()|0;c[a>>2]=pc(b|0,wJ(e)|0)|0;l=d;return}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;zJ(e,yJ(c[b>>2]|0)|0);eG(e);l=d;return}function vJ(){return xJ()|0}function wJ(a){a=a|0;return a|0}function xJ(){return 112}function yJ(a){a=a|0;return a|0}function zJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function AJ(a){a=a|0;return 3}function BJ(a){a=a|0;return DJ()|0}function CJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;YG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);IG(e);l=d;return c|0}function DJ(){return 1744}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(FJ(b)|0){uH(c,a);a=Pq(c)|0}else{uH(c,a);uH(d,b);a=Qq(c,d)|0}l=e;return a|0}function FJ(a){a=a|0;return (c[a>>2]|0)==1|0}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Rj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qj(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function JJ(a){a=a|0;return 2}function KJ(a){a=a|0;return MJ()|0}function LJ(a,b){a=a|0;b=b|0;b=WG(b)|0;return rH(Cd[a&63](b)|0)|0}function MJ(){return 1756}function NJ(a){a=a|0;Fu(a);return}function OJ(a){a=a|0;Eu(a);return}function PJ(a){a=a|0;return 2}function QJ(a){a=a|0;return UJ()|0}function RJ(){return 34583}function SJ(a,b){a=a|0;b=b|0;b=TJ(b)|0;je[a&127](b);return}function TJ(a){a=a|0;return a|0}function UJ(){return 1764}function VJ(a){a=a|0;Du(a);return}function WJ(a){a=a|0;return 4}function XJ(a){a=a|0;return _J()|0}function YJ(){return 34614}function ZJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;YG(f,b);YG(g,c);d=FH(d)|0;ue[a&63](f,g,d);IG(g);IG(f);l=e;return}function _J(){return 1772}function $J(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;uH(f,a);uH(e,b);Hi(f,e,c);l=d;return}function aK(a){a=a|0;return 3}function bK(a){a=a|0;return dK()|0}function cK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;oG(e,b);c=WG(c)|0;ue[a&63](f,e,c);c=HG(f)|0;IG(f);T9(e);l=d;return c|0}function dK(){return 1788}function eK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=34630;O9(34620,d)|0;YF(a);l=b;return}function fK(a){a=a|0;return 5}function gK(a){a=a|0;return jK()|0}function hK(){return 34778}function iK(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=GG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function jK(){return 1800}function kK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=34785;O9(34620,b)|0;l=a;return}function lK(a){a=a|0;return 3}function mK(a){a=a|0;return oK()|0}function nK(a,b,c){a=a|0;b=b|0;c=c|0;b=WG(b)|0;c=WG(c)|0;return rH(Gd[a&63](b,c)|0)|0}function oK(){return 1820}function pK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Zi(34949,d);l=e;return}function qK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(OF(d)|0)In(b,0);else{kG(e,d);In(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);T9(e)}l=f;return}function rK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return nk(b)|0}function sK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return uk(b,d)|0}function tK(a){a=a|0;return 4}function uK(a){a=a|0;return wK()|0}function vK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=WG(c)|0;d=FH(d)|0;d=rH(Od[a&63](f,c,d)|0)|0;T9(f);l=e;return d|0}function wK(){return 1832}function xK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return sk(b,d,e)|0}function yK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return rk(b,d)|0}function zK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=ok(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h);l=i;return j|0}function AK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;dI(f,d);fG(a,hc(b|0,c[f>>2]|0)|0);IG(f);l=e;return}function BK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(IK(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=JK(e)|0;TF(d);l=b;return a|0}function CK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DK(e,b);b=EK()|0;c[a>>2]=pc(b|0,FK(e)|0)|0;l=d;return}function DK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;HK(f,rH((a[d>>0]|0)!=0)|0);eG(f);l=e;return}function EK(){return GK()|0}function FK(a){a=a|0;return a|0}function GK(){return 864}function HK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function IK(a){a=a|0;return LK()|0}function JK(a){a=+a;return FH(KK(a)|0)|0}function KK(a){a=+a;return a!=0.0|0}function LK(){return 1848}function MK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mk(b)|0}function NK(a){a=a|0;return 3}function OK(a){a=a|0;return QK()|0}function PK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=WG(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function QK(){return 1852}function RK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return qk(b,d)|0}function SK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;ek(b);return}function TK(a){a=a|0;return 5}function UK(a){a=a|0;return WK()|0}function VK(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;oG(g,b);oG(h,c);YG(i,d);e=FH(e)|0;e=rH(Xd[a&31](g,h,i,e)|0)|0;IG(i);T9(h);T9(g);l=f;return e|0}function WK(){return 1864}function XK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;AK(h,e,i);k=BK(h)|0;IG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=gq(b,d,g,f)|0;c[h>>2]=0;CK(i,g);cI(e,h,i);IG(i);l=j;return k|0}function YK(a){a=a|0;return 3}function ZK(a){a=a|0;return $K()|0}function _K(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oG(e,b);c=FH(c)|0;c=rH(Gd[a&63](e,c)|0)|0;T9(e);l=d;return c|0}function $K(){return 1884}function aL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return mq(b,d)|0}function bL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;$j(34949,d);l=e;return}function cL(a){a=a|0;return 3}function dL(a){a=a|0;return gL()|0}function eL(){return 34952}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);oe[a&127](e,f);IG(f);T9(e);l=d;return}function gL(){return 1896}function hL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;iL(g,d);eH(e,34957);f=jL(g,e)|0;IG(e);IG(g);do if(!f){iL(g,d);eH(e,34965);f=jL(g,e)|0;IG(e);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){mr(b,+wH(d),0);break}else{kG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;yn(b,34949,h);T9(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;lr(b,BK(d)|0)}while(0);l=i;return}function iL(a,b){a=a|0;b=b|0;fG(a,qc(c[b>>2]|0)|0);return}function jL(a,b){a=a|0;b=b|0;return gc(c[a>>2]|0,c[b>>2]|0)|0}function kL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=$p(b,e)|0;l=f;return e|0}function lL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42560]|0)==0?Haa(42560)|0:0)aH(57940,e);if((a[42568]|0)==0?Haa(42568)|0:0)c[14486]=f;if((a[42576]|0)==0?Haa(42576)|0:0){c[14487]=0;c[14488]=0;c[14489]=0}c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=cq(b,h,oL(34)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function mL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(qL(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=rL(e)|0;TF(d);l=b;return a|0}function nL(a,b,c){a=a|0;b=b|0;c=c|0;return pL(b,c)|0}function oL(a){a=a|0;return a|0}function pL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[14486]|0)<(b|0))b=0;else{AK(h,57940,f);kG(g,h);if((a[57959]|0)<0){f=c[14487]|0;a[e>>0]=0;Pz(f,e);c[14488]=0}else{a[e>>0]=0;Pz(57948,e);a[57959]=0}U9(57948,0);c[14487]=c[g>>2];c[14488]=c[g+4>>2];c[14489]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;T9(g);IG(h);c[d>>2]=(a[57959]|0)<0?c[14487]|0:57948;b=1}l=i;return b|0}function qL(a){a=a|0;return tL()|0}function rL(a){a=+a;return WG(sL(a)|0)|0}function sL(a){a=+a;return ~~a|0}function tL(){return 1908}function uL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;iL(i,d);eH(g,34957);k=jL(i,g)|0;IG(g);IG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=BK(d)|0;uH(i,f);b=Yp(b,k,e,i)|0}else{c[h>>2]=0;AK(g,d,h);k=BK(g)|0;IG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(g,f);b=_p(b,i,e,g)|0;c[g>>2]=0;CK(h,i);cI(d,g,h);IG(h)}l=j;return b|0}function vL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(OF(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Sn(b,e)|0}else{c[h>>2]=0;AK(g,d,h);j=BK(g)|0;IG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Tn(b,f,e)|0;c[g>>2]=0;CK(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function wL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;iL(d,b);eH(g,34972);f=jL(d,g)|0;IG(g);IG(d);if(f){kG(d,b);ir((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}else jr(mL(b)|0);l=e;return}function xL(a){a=a|0;return 4}function yL(a){a=a|0;return AL()|0}function zL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;YG(f,b);c=WG(c)|0;oG(g,d);d=rH(Od[a&63](f,c,g)|0)|0;T9(g);IG(f);l=e;return d|0}function AL(){return 1912}function BL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;iL(f,b);eH(k,34972);j=jL(f,k)|0;IG(k);IG(f);if(j){kG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=Yn(b,d,34949,g)|0;T9(f)}else{b=mL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=Zn(b,d,34949,h)|0}l=i;return e|0}function CL(a){a=a|0;return 3}function DL(a){a=a|0;return FL()|0}function EL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);c=rH(Gd[a&63](e,f)|0)|0;T9(f);IG(e);l=d;return c|0}function FL(){return 1928}function GL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;iL(e,b);eH(j,34972);i=jL(e,j)|0;IG(j);IG(e);if(i){kG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=_n(b,34949,f)|0;T9(e)}else{b=mL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=$n(b,34949,g)|0}l=h;return d|0}function HL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;IL(h,d);uH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=rq(b,h,e,g)|0;l=j;return i|0}function IL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;vH(h,b,34432);g=+wH(h);IG(h);vH(h,b,34434);f=+wH(h);IG(h);vH(h,b,34475);e=+wH(h);IG(h);vH(h,b,34477);d=+wH(h);IG(h);Of(a,g,f,e,d);l=c;return}function JL(a){a=a|0;return 5}function KL(a){a=a|0;return ML()|0}function LL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;oG(g,b);YG(h,c);d=WG(d)|0;YG(i,e);e=rH(Xd[a&31](g,h,d,i)|0)|0;IG(i);IG(h);T9(g);l=f;return e|0}function ML(){return 1940}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Cq(b,i,e,0)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function OL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Gq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function PL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);IG(j);c[k>>2]=1;AK(j,d,k);m=i+4|0;g[m>>2]=+wH(j);IG(j);c[k>>2]=2;AK(j,d,k);f=i+8|0;g[f>>2]=+wH(j);IG(j);c[k>>2]=3;AK(j,d,k);h=i+12|0;g[h>>2]=+wH(j);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=zq(b,i,e)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,m);cI(d,j,k);IG(k);c[j>>2]=2;bI(k,f);cI(d,j,k);IG(k);c[j>>2]=3;bI(k,h);cI(d,j,k);IG(k);l=n;return e|0}function QL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;AK(i,d,j);g[h>>2]=+wH(i);IG(i);c[j>>2]=1;AK(i,d,j);k=h+4|0;g[k>>2]=+wH(i);IG(i);c[j>>2]=2;AK(i,d,j);f=h+8|0;g[f>>2]=+wH(i);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=yq(b,h,e)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;bI(j,k);cI(d,i,j);IG(j);c[i>>2]=2;bI(j,f);cI(d,i,j);IG(j);l=m;return e|0}function RL(a){a=a|0;return 7}function SL(a){a=a|0;return VL()|0}function TL(){return 34979}function UL(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;oG(i,b);YG(j,c);YG(k,d);e=WG(e)|0;f=WG(f)|0;oG(m,g);g=rH(be[a&7](i,j,k,e,f,m)|0)|0;T9(m);IG(k);IG(j);T9(i);l=h;return g|0}function VL(){return 1960}function WL(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;AK(j,e,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Ao(b,j,i,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(e,j,k);IG(k);l=m;return n|0}function XL(a){a=a|0;return 8}function YL(a){a=a|0;return $L()|0}function ZL(){return 34988}function _L(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;oG(j,b);YG(k,c);YG(m,d);e=+XG(e);f=+XG(f);oG(n,g);h=+XG(h);g=rH(Td[a&3](j,k,m,e,f,n,h)|0)|0;T9(n);IG(m);IG(k);T9(j);l=i;return g|0}function $L(){return 1988}function aM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;AK(m,e,n);p=+wH(m);IG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=yo(b,m,k,f,h,i,j)|0;c[m>>2]=0;bI(n,k);cI(e,m,n);IG(n);l=o;return d|0}function bM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;h=k+4|0;c[i>>2]=1;AK(p,d,i);c[h>>2]=mL(p)|0;i=k+8|0;c[j>>2]=2;AK(q,d,j);c[i>>2]=mL(q)|0;j=k+12|0;c[s>>2]=3;AK(r,d,s);c[j>>2]=mL(r)|0;IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=Ko(b,k,e,f,g)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;QI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function cM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;h=j+4|0;c[i>>2]=1;AK(o,d,i);c[h>>2]=mL(o)|0;i=j+8|0;c[q>>2]=2;AK(p,d,q);c[i>>2]=mL(p)|0;IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=Jo(b,j,e,f,g)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;QI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function dM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;h=i+4|0;c[o>>2]=1;AK(n,d,o);c[h>>2]=mL(n)|0;IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=Io(b,i,e,f,g)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function eM(a){a=a|0;return 6}function fM(a){a=a|0;return iM()|0}function gM(){return 34998}function hM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;oG(j,f);f=rH(ae[a&15](h,i,d,e,j)|0)|0;T9(j);IG(i);T9(h);l=g;return f|0}function iM(){return 2020}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=On(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function kM(a){a=a|0;return 5}function lM(a){a=a|0;return oM()|0}function mM(){return 35006}function nM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=+XG(d);e=+XG(e);c=rH(Id[a&3](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return c|0}function oM(){return 2044}function pM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=+wH(i);IG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zo(b,h,e,f)|0;c[i>>2]=0;bI(j,h);cI(d,i,j);IG(j);l=k;return b|0}function qM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);j=n+4|0;c[k>>2]=1;AK(r,d,k);g[j>>2]=+wH(r);k=n+8|0;c[m>>2]=2;AK(s,d,m);g[k>>2]=+wH(s);m=n+12|0;c[u>>2]=3;AK(t,d,u);g[m>>2]=+wH(t);IG(t);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=Go(b,n,e,f,h,i)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,j);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=3;bI(p,m);cI(d,o,p);IG(p);l=q;return u|0}function rM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);j=m+4|0;c[k>>2]=1;AK(q,d,k);g[j>>2]=+wH(q);k=m+8|0;c[s>>2]=2;AK(r,d,s);g[k>>2]=+wH(r);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=Fo(b,m,e,f,h,i)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,j);cI(d,n,o);IG(o);c[n>>2]=2;bI(o,k);cI(d,n,o);IG(o);l=p;return s|0}function sM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);j=k+4|0;c[q>>2]=1;AK(p,d,q);g[j>>2]=+wH(p);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Eo(b,k,e,f,h,i)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,j);cI(d,m,n);IG(n);l=o;return q|0}function tM(a){a=a|0;return 7}function uM(a){a=a|0;return xM()|0}function vM(){return 35013}function wM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);oG(k,f);g=+XG(g);f=rH(Kd[a&7](i,j,d,e,k,g)|0)|0;T9(k);IG(j);T9(i);l=h;return f|0}function xM(){return 2064}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=xo(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return h|0}function zM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;AK(j,d,k);c[i>>2]=mL(j)|0;f=i+4|0;c[g>>2]=1;AK(n,d,g);c[f>>2]=mL(n)|0;g=i+8|0;c[h>>2]=2;AK(o,d,h);c[g>>2]=mL(o)|0;h=i+12|0;c[q>>2]=3;AK(p,d,q);c[h>>2]=mL(p)|0;IG(p);IG(o);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Qp(b,i,e)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;QI(k,f);cI(d,j,k);IG(k);c[j>>2]=2;QI(k,g);cI(d,j,k);IG(k);c[j>>2]=3;QI(k,h);cI(d,j,k);IG(k);l=m;return q|0}function AM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;AK(i,d,j);c[h>>2]=mL(i)|0;f=h+4|0;c[g>>2]=1;AK(m,d,g);c[f>>2]=mL(m)|0;g=h+8|0;c[o>>2]=2;AK(n,d,o);c[g>>2]=mL(n)|0;IG(n);IG(m);IG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Pp(b,h,e)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);c[i>>2]=1;QI(j,f);cI(d,i,j);IG(j);c[i>>2]=2;QI(j,g);cI(d,i,j);IG(j);l=k;return o|0}function BM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;AK(g,d,h);c[f>>2]=mL(g)|0;i=f+4|0;c[m>>2]=1;AK(k,d,m);c[i>>2]=mL(k)|0;IG(k);IG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Op(b,f,e)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h);c[g>>2]=1;QI(h,i);cI(d,g,h);IG(h);l=j;return m|0}function CM(a){a=a|0;return 6}function DM(a){a=a|0;return FM()|0}function EM(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;g=l;l=l+16|0;h=g+4|0;i=g;oG(h,b);YG(i,c);d=WG(d)|0;e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,d,e,f)|0)|0;IG(i);T9(h);l=g;return f|0}function FM(){return 2092}function GM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;AK(i,d,j);m=mL(i)|0;IG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=Ip(b,h,e,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return m|0}function HM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;AK(m,d,n);g[k>>2]=+wH(m);h=k+4|0;c[i>>2]=1;AK(p,d,i);g[h>>2]=+wH(p);i=k+8|0;c[j>>2]=2;AK(q,d,j);g[i>>2]=+wH(q);j=k+12|0;c[s>>2]=3;AK(r,d,s);g[j>>2]=+wH(r);IG(r);IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=Mp(b,k,e,f)|0;c[m>>2]=0;bI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;bI(n,h);cI(d,m,n);IG(n);c[m>>2]=2;bI(n,i);cI(d,m,n);IG(n);c[m>>2]=3;bI(n,j);cI(d,m,n);IG(n);l=o;return s|0}function IM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;AK(k,d,m);g[j>>2]=+wH(k);h=j+4|0;c[i>>2]=1;AK(o,d,i);g[h>>2]=+wH(o);i=j+8|0;c[q>>2]=2;AK(p,d,q);g[i>>2]=+wH(p);IG(p);IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=Lp(b,j,e,f)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;bI(m,h);cI(d,k,m);IG(m);c[k>>2]=2;bI(m,i);cI(d,k,m);IG(m);l=n;return q|0}function JM(a){a=a|0;return 5}function KM(a){a=a|0;return MM()|0}function LM(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;f=l;l=l+16|0;g=f+4|0;h=f;oG(g,b);YG(h,c);d=WG(d)|0;e=WG(e)|0;e=rH(Xd[a&31](g,h,d,e)|0)|0;IG(h);T9(g);l=f;return e|0}function MM(){return 2116}function NM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;AK(j,d,k);g[i>>2]=+wH(j);h=i+4|0;c[o>>2]=1;AK(n,d,o);g[h>>2]=+wH(n);IG(n);IG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=Kp(b,i,e,f)|0;c[j>>2]=0;bI(k,i);cI(d,j,k);IG(k);c[j>>2]=1;bI(k,h);cI(d,j,k);IG(k);l=m;return o|0}function OM(a){a=a|0;return 7}function PM(a){a=a|0;return SM()|0}function QM(){return 35022}function RM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;oG(i,b);YG(j,c);d=+XG(d);e=+XG(e);f=WG(f)|0;g=WG(g)|0;g=rH(Ld[a&1](i,j,d,e,f,g)|0)|0;IG(j);T9(i);l=h;return g|0}function SM(){return 2136}function TM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;AK(k,d,m);o=+wH(k);IG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=Hp(b,j,e,f,h,i)|0;c[k>>2]=0;bI(m,j);cI(d,k,m);IG(m);l=n;return i|0}function UM(a){a=a|0;return 8}function VM(a){a=a|0;return YM()|0}function WM(){return 35031}function XM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;oG(j,b);YG(k,c);d=GG(d)|0;YG(m,e);f=WG(f)|0;YG(n,g);YG(o,h);h=rH(ce[a&7](j,k,d,m,f,n,o)|0)|0;IG(o);IG(n);IG(m);IG(k);T9(j);l=i;return h|0}function YM(){return 2164}function ZM(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;AK(k,d,m);kG(j,k);IG(k);U9(j,e);if(OF(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[42584]|0)==0?Haa(42584)|0:0)aH(57960,h);if((a[42592]|0)==0?Haa(42592)|0:0)aH(57964,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;uH(k,f);b=Dp(b,o<<24>>24<0?i:j,e,k,g,$M(24)|0,0)|0;i=j}c[k>>2]=0;eH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);cI(d,k,m);IG(m);T9(j);l=n;return b|0}function _M(a){a=a|0;return aN(a)|0}function $M(a){a=a|0;return a|0}function aN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57964);dN(e,57960,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function bN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lN(e,b);b=mN()|0;c[a>>2]=pc(b|0,nN(e)|0)|0;l=d;return}function cN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;eH(f,b);oc(a|0,c[f>>2]|0,c[d>>2]|0);IG(f);l=e;return}function dN(a,b,c){a=a|0;b=b|0;c=c|0;eN(a,b,17,c);return}function eN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;fN(i,e);h=c[b>>2]|0;g=gN(j)|0;b=hN(j)|0;e=iN(i)|0;fG(a,Xd[d&31](h,g,b,e)|0);l=f;return}function fN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kN(e,HG(b)|0);eG(e);l=d;return}function gN(a){a=a|0;return 1}function hN(a){a=a|0;return jN()|0}function iN(a){a=a|0;return a|0}function jN(){return 2196}function kN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qN(e,pN(c[b>>2]|0)|0);eG(e);l=d;return}function mN(){return oN()|0}function nN(a){a=a|0;return a|0}function oN(){return 160}function pN(a){a=a|0;return a|0}function qN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rN(a){a=a|0;return 7}function sN(a){a=a|0;return uN()|0}function tN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;oG(i,b);YG(j,c);d=GG(d)|0;e=WG(e)|0;YG(k,f);YG(m,g);g=rH(be[a&7](i,j,d,e,k,m)|0)|0;IG(m);IG(k);IG(j);T9(i);l=h;return g|0}function uN(){return 2200}function vN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);kG(i,j);IG(j);U9(i,e);if(OF(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=lg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[42600]|0)==0?Haa(42600)|0:0)aH(57968,g);if((a[42608]|0)==0?Haa(42608)|0:0)aH(57972,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=lg(b,h,e,f,$M(25)|0,0)|0;h=i}c[j>>2]=0;eH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);cI(d,j,k);IG(k);T9(i);l=m;return b|0}function wN(a){a=a|0;return xN(a)|0}function xN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;bN(d,f);cN(d,35041,57972);dN(e,57968,d);a=mL(e)|0;IG(e);IG(d);l=b;return a|0}function yN(a){a=a|0;return 9}function zN(a){a=a|0;return CN()|0}function AN(){return 35107}function BN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;oG(k,b);YG(m,c);YG(n,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(o,h);YG(p,i);i=rH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;IG(p);T9(o);IG(n);IG(m);T9(k);l=j;return i|0}function CN(){return 2228}function DN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;AK(p,d,m);k=mL(p)|0;IG(p);c[q>>2]=k;c[n>>2]=0;AK(p,e,n);k=mL(p)|0;IG(p);c[m>>2]=k;if(OF(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=Nz(0)|0;if(k>>>0>4294967279)R9(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=P9(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}Oz(j,0,k)|0;a[p>>0]=0;Pz(j+k|0,p)}else kG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=Xo(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;QI(o,q);cI(d,p,o);IG(o);c[p>>2]=0;QI(o,m);cI(e,p,o);IG(o);T9(n);l=r;return s|0}function EN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;AK(n,d,o);c[m>>2]=mL(n)|0;i=m+4|0;c[j>>2]=1;AK(q,d,j);c[i>>2]=mL(q)|0;j=m+8|0;c[k>>2]=2;AK(r,d,k);c[j>>2]=mL(r)|0;k=m+12|0;c[t>>2]=3;AK(s,d,t);c[k>>2]=mL(s)|0;IG(s);IG(r);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=Wo(b,m,e,f,g,h)|0;c[n>>2]=0;QI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;QI(o,i);cI(d,n,o);IG(o);c[n>>2]=2;QI(o,j);cI(d,n,o);IG(o);c[n>>2]=3;QI(o,k);cI(d,n,o);IG(o);l=p;return t|0}function FN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;AK(m,d,n);c[k>>2]=mL(m)|0;i=k+4|0;c[j>>2]=1;AK(p,d,j);c[i>>2]=mL(p)|0;j=k+8|0;c[r>>2]=2;AK(q,d,r);c[j>>2]=mL(q)|0;IG(q);IG(p);IG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=Vo(b,k,e,f,g,h)|0;c[m>>2]=0;QI(n,k);cI(d,m,n);IG(n);c[m>>2]=1;QI(n,i);cI(d,m,n);IG(n);c[m>>2]=2;QI(n,j);cI(d,m,n);IG(n);l=o;return r|0}function GN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;AK(k,d,m);c[j>>2]=mL(k)|0;i=j+4|0;c[p>>2]=1;AK(o,d,p);c[i>>2]=mL(o)|0;IG(o);IG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=Uo(b,j,e,f,g,h)|0;c[k>>2]=0;QI(m,j);cI(d,k,m);IG(m);c[k>>2]=1;QI(m,i);cI(d,k,m);IG(m);l=n;return p|0}function HN(a){a=a|0;return 7}function IN(a){a=a|0;return LN()|0}function JN(){return 35118}function KN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;oG(i,b);YG(j,c);d=+XG(d);e=WG(e)|0;f=WG(f)|0;oG(k,g);g=rH(Nd[a&7](i,j,d,e,f,k)|0)|0;T9(k);IG(j);T9(i);l=h;return g|0}function LN(){return 2264}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;AK(j,d,k);n=mL(j)|0;IG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=So(b,i,e,f,g,h)|0;c[j>>2]=0;QI(k,i);cI(d,j,k);IG(k);l=m;return n|0}function NN(a){a=a|0;return 10}function ON(a){a=a|0;return RN()|0}function PN(){return 35127}function QN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;oG(m,b);YG(n,c);YG(o,d);e=+XG(e);f=+XG(f);g=+XG(g);oG(p,h);YG(q,i);j=+XG(j);i=rH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;IG(q);T9(p);IG(o);IG(n);T9(m);l=k;return i|0}function RN(){return 2292}function SN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;AK(s,d,p);u=+wH(s);IG(s);g[o>>2]=u;c[q>>2]=0;AK(s,e,q);u=+wH(s);IG(s);g[p>>2]=u;if(OF(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=Nz(0)|0;if(n>>>0>4294967279)R9(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=P9(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}Oz(k,0,n)|0;a[s>>0]=0;Pz(k+n|0,s)}else kG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=Ro(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;bI(r,o);cI(d,s,r);IG(r);c[s>>2]=0;bI(r,p);cI(e,s,r);IG(r);T9(q);l=t;return v|0}function TN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;AK(p,d,q);g[o>>2]=+wH(p);k=o+4|0;c[m>>2]=1;AK(s,d,m);g[k>>2]=+wH(s);m=o+8|0;c[n>>2]=2;AK(t,d,n);g[m>>2]=+wH(t);n=o+12|0;c[v>>2]=3;AK(u,d,v);g[n>>2]=+wH(u);IG(u);IG(t);IG(s);IG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=Qo(b,o,e,f,h,i,j)|0;c[p>>2]=0;bI(q,o);cI(d,p,q);IG(q);c[p>>2]=1;bI(q,k);cI(d,p,q);IG(q);c[p>>2]=2;bI(q,m);cI(d,p,q);IG(q);c[p>>2]=3;bI(q,n);cI(d,p,q);IG(q);l=r;return v|0}function UN(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;AK(o,d,p);g[n>>2]=+wH(o);k=n+4|0;c[m>>2]=1;AK(r,d,m);g[k>>2]=+wH(r);m=n+8|0;c[t>>2]=2;AK(s,d,t);g[m>>2]=+wH(s);IG(s);IG(r);IG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=Po(b,n,e,f,h,i,j)|0;c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);c[o>>2]=1;bI(p,k);cI(d,o,p);IG(p);c[o>>2]=2;bI(p,m);cI(d,o,p);IG(p);l=q;return t|0}function VN(a){a=a|0;return 8}function WN(a){a=a|0;return ZN()|0}function XN(){return 35139}function YN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);oG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;T9(m);IG(k);T9(j);l=i;return g|0}function ZN(){return 2332}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;AK(n,d,o);g[m>>2]=+wH(n);k=m+4|0;c[r>>2]=1;AK(q,d,r);g[k>>2]=+wH(q);IG(q);IG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=Oo(b,m,e,f,h,i,j)|0;c[n>>2]=0;bI(o,m);cI(d,n,o);IG(o);c[n>>2]=1;bI(o,k);cI(d,n,o);IG(o);l=p;return r|0}function $N(a){a=a|0;return 8}function aO(a){a=a|0;return cO()|0}function bO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;oG(j,b);YG(k,c);d=+XG(d);e=+XG(e);f=+XG(f);YG(m,g);h=+XG(h);g=rH(Jd[a&7](j,k,d,e,f,m,h)|0)|0;IG(m);IG(k);T9(j);l=i;return g|0}function cO(){return 2364}function dO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;AK(o,d,p);r=+wH(o);IG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(i)|0)){kG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=Mo(b,n,e,f,h,i,j)|0;if(k)T9(m);c[o>>2]=0;bI(p,n);cI(d,o,p);IG(p);l=q;return b|0}function eO(a){a=a|0;return 6}function fO(a){a=a|0;return hO()|0}function gO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;oG(h,b);YG(i,c);YG(j,d);e=WG(e)|0;f=WG(f)|0;f=rH(ae[a&15](h,i,j,e,f)|0)|0;IG(j);IG(i);T9(h);l=g;return f|0}function hO(){return 2396}function iO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[42616]|0)==0?Haa(42616)|0:0)aH(57976,e);c[j>>2]=0;AK(i,d,j);e=mL(i)|0;IG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=Xp(b,h,oL(35)|0,0,f,g)|0;c[i>>2]=0;QI(j,h);cI(d,i,j);IG(j);l=k;return g|0}function jO(a,b,c){a=a|0;b=b|0;c=c|0;kO(b,c);return 1}function kO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[42624]|0)==0?Haa(42624)|0:0){AK(f,57976,e);kG(57980,f);IG(f)}c[d>>2]=(a[57991]|0)<0?c[14495]|0:57980;l=g;return}function lO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(OF(d)|0)){kG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=Rp(b,d,e)|0;if(f)T9(g);l=h;return b|0}function mO(a){a=a|0;return 4}function nO(a){a=a|0;return qO()|0}function oO(){return 35149}function pO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+XG(b);YG(f,c);YG(g,d);ie[a&1](b,f,g);IG(g);IG(f);l=e;return}function qO(){return 2420}function rO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(OF(e)|0){uH(f,d);bp(b,f,0)}else{uH(f,d);kG(g,e);bp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);T9(g)}l=h;return}function sO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(57992,d)|0;tO(57996,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(2)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ap(b,j,0,f,g,d,n,m,o);l=q;return}function tO(a,b){a=a|0;b=b|0;ic(c[b>>2]|0);fc(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function uO(a,b){a=a|0;b=b|0;return +(+wO(b))}function vO(a){a=a|0;return a|0}function wO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,57992,57996,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function xO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yO(a,b,17,c,d);return}function yO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;zO(i,e,f);h=c[b>>2]|0;b=AO(j)|0;e=BO(j)|0;f=CO(i)|0;fG(a,Xd[d&31](h,b,e,f)|0);l=g;return}function zO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;kN(f,HG(b)|0);kN(f,HG(d)|0);eG(f);l=e;return}function AO(a){a=a|0;return 2}function BO(a){a=a|0;return DO()|0}function CO(a){a=a|0;return a|0}function DO(){return 2436}function EO(a){a=a|0;return 10}function FO(a){a=a|0;return IO()|0}function GO(){return 35155}function HO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;oG(m,b);YG(n,c);YG(o,d);e=WG(e)|0;f=WG(f)|0;YG(p,g);YG(q,h);YG(r,i);YG(s,j);Pe[a&3](m,n,o,e,f,p,q,r,s);IG(s);IG(r);IG(q);IG(p);IG(o);IG(n);T9(m);l=k;return}function IO(){return 2444}function JO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;tO(58e3,d)|0;tO(58004,e)|0;if(OF(h)|0)d=0;else{kG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;T9(o)}if(OF(i)|0)n=3402823466385288598117041.0e14;else n=+wH(i);if(OF(j)|0)m=3402823466385288598117041.0e14;else m=+wH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=vO(3)|0;uH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];$o(b,j,0,f,g,d,n,m,o);l=q;return}function KO(a,b){a=a|0;b=b|0;return +(+LO(b))}function LO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;QI(e,g);xO(f,58e3,58004,e);b=+wH(f);IG(f);IG(e);l=d;return +b}function MO(a){a=a|0;return 4}function NO(a){a=a|0;return PO()|0}function OO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;oG(f,b);YG(g,c);YG(h,d);d=rH(Od[a&63](f,g,h)|0)|0;IG(h);IG(g);T9(f);l=e;return d|0}function PO(){return 2484}function QO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(FJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ep(b,BK(d)|0)|0}else{c[h>>2]=0;AK(g,d,h);j=mL(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=gp(b,f,mL(e)|0)|0;c[g>>2]=0;QI(h,f);cI(d,g,h);IG(h)}l=i;return b|0}function RO(a){a=a|0;return 4}function SO(a){a=a|0;return UO()|0}function TO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=GG(d)|0;d=rH(Od[a&63](f,g,d)|0)|0;IG(g);T9(f);l=e;return d|0}function UO(){return 2500}function VO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;AK(g,d,h);j=WO(g)|0;IG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=dp(b,f,e)|0;c[g>>2]=0;XO(h,f);cI(d,g,h);IG(h);l=i;return j|0}function WO(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+dc(a|0,c[(bP(b+8|0)|0)>>2]|0,f|0);RF(d,c[f>>2]|0);a=cP(e)|0;TF(d);l=b;return a|0}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YO(e,b);b=ZO()|0;c[a>>2]=pc(b|0,_O(e)|0)|0;l=d;return}function YO(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;aP(e,xI(b)|0);eG(e);l=d;return}function ZO(){return $O()|0}function _O(a){a=a|0;return a|0}function $O(){return 920}function aP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function bP(a){a=a|0;return eP()|0}function cP(a){a=+a;return GG(dP(a)|0)|0}function dP(a){a=+a;return ~~a>>>0|0}function eP(){return 2516}function fP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;AK(f,d,g);i=BK(f)|0;IG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=cp(b,e)|0;c[f>>2]=0;CK(g,e);cI(d,f,g);IG(g);l=h;return i|0}function gP(a){a=a|0;return 8}function hP(a){a=a|0;return jP()|0}function iP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;YG(j,b);YG(k,c);YG(m,d);YG(n,e);f=WG(f)|0;YG(o,g);YG(p,h);h=rH(ce[a&7](j,k,m,n,f,o,p)|0)|0;IG(p);IG(o);IG(n);IG(m);IG(k);IG(j);l=i;return h|0}function jP(){return 2520}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[c[(zh()|0)+124>>2]>>2]|0;uH(n,a);uH(m,b);uH(k,d);IL(j,f);IL(i,g);g=Fn(o,n,m,k,e,j,i)|0;l=h;return g|0}function lP(a){a=a|0;return 7}function mP(a){a=a|0;return pP()|0}function nP(){return 35167}function oP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;YG(i,b);YG(j,c);YG(k,d);YG(m,e);YG(n,f);YG(o,g);Ie[a&7](i,j,k,m,n,o);IG(o);IG(n);IG(m);IG(k);IG(j);IG(i);l=h;return}function pP(){return 2552}function qP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[c[(zh()|0)+124>>2]>>2]|0;uH(m,a);uH(k,b);uH(j,d);IL(i,e);IL(h,f);En(n,m,k,j,i,h);l=g;return}function rP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=Cn(b,e)|0;l=f;return e|0}function sP(a){a=a|0;return 2}function tP(a){a=a|0;return vP()|0}function uP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oG(d,b);b=rH(Cd[a&63](d)|0)|0;T9(d);l=c;return b|0}function vP(){return 2580}function wP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Bn(b)|0}function xP(a){a=a|0;return 3}function yP(a){a=a|0;return AP()|0}function zP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oG(e,b);YG(f,c);c=rH(Gd[a&63](e,f)|0)|0;IG(f);T9(e);l=d;return c|0}function AP(){return 2588}function BP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(e,d);e=An(b,e)|0;l=f;return e|0}function CP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function DP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;lo(34949,d);l=e;return}function EP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function FP(a){a=a|0;return 3}function GP(a){a=a|0;return IP()|0}function HP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;oG(e,b);oG(f,c);oe[a&127](e,f);T9(f);T9(e);l=d;return}function IP(){return 2600}function JP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;yn(b,34949,e);l=f;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function LP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;vn(34949,d);l=e;return}function MP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function NP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;tn(34949,d);l=e;return}function OP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function PP(a){a=a|0;return 3}function QP(a){a=a|0;return SP()|0}function RP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;YG(e,b);oG(f,c);oe[a&127](e,f);T9(f);IG(e);l=d;return}function SP(){return 2612}function TP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;IL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;rn(e,34949,f);l=g;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function VP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;pn(34949,d);l=e;return}function WP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;on(b,0);return}function XP(a){a=a|0;return 2}function YP(a){a=a|0;return _P()|0}function ZP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;YG(e,b);c[f>>2]=Cd[a&63](e)|0;b=xI(f)|0;IG(e);l=d;return b|0}function _P(){return 2624}function $P(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)b=io(mL(b)|0)|0;else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);b=ho((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;T9(d)}l=h;return b|0}function aQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;iL(e,b);kG(d,e);f=Nz(34965)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(W9(d,0,-1,34965,f)|0)==0;T9(d);IG(e);if(i)fo(mL(b)|0);else g=5}else{T9(d);IG(e);g=5}if((g|0)==5){kG(d,b);el((a[d+11>>0]|0)<0?c[d>>2]|0:d);T9(d)}l=h;return}function bQ(a){a=a|0;return 3}function cQ(a){a=a|0;return fQ()|0}function dQ(){return 35176}function eQ(a,b,c){a=a|0;b=b|0;c=+c;b=WG(b)|0;c=+XG(c);ke[a&7](b,c);return}function fQ(){return 2632}function gQ(a){a=a|0;return 2}function hQ(a){a=a|0;return kQ()|0}function iQ(){return 35181}function jQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;g[e>>2]=+yd[a&3](b);c=+kH(e);l=d;return +c}function kQ(){return 2644}function lQ(a){a=a|0;return 1}function mQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Bd[a&31]()|0;a=RH(d)|0;l=b;return a|0}function nQ(a){a=a|0;return 4}function oQ(a){a=a|0;return qQ()|0}function pQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=WG(b)|0;YG(f,c);d=FH(d)|0;ue[a&63](b,f,d);IG(f);l=e;return}function qQ(){return 2652}function rQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(OF(d)|0)hr(b,0,e);else{kG(f,d);hr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);T9(f)}l=g;return}function sQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function uQ(a){a=a|0;return 2}function vQ(a){a=a|0;return xQ()|0}function wQ(a,b){a=a|0;b=b|0;b=II(b)|0;je[a&127](b);return}function xQ(){return 2668}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Vm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function zQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Cp(c);l=b;return}function AQ(a){a=a|0;return 2}function BQ(a){a=a|0;return DQ()|0}function CQ(a,b){a=a|0;b=b|0;b=FH(b)|0;je[a&127](b);return}function DQ(){return 2676}function EQ(a){a=a|0;return 3}function FQ(a){a=a|0;return HQ()|0}function GQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;YG(f,b);YG(g,d);c[h>>2]=Gd[a&63](f,g)|0;d=xI(h)|0;IG(g);IG(f);l=e;return d|0}function HQ(){return 2684}function IQ(a,b){a=a|0;b=b|0;a=mL(a)|0;return Rf(a,+wH(b))|0}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tm(e);aH(d,b);bH(a,e,d);IG(d);l=c;return}function KQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Rm()|0;LQ(a,d);l=b;return}function LQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;MQ(e,b);b=NQ()|0;c[a>>2]=pc(b|0,OQ(e)|0)|0;l=d;return}function MQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;RQ(e,QQ(c[b>>2]|0)|0);eG(e);l=d;return}function NQ(){return PQ()|0}function OQ(a){a=a|0;return a|0}function PQ(){return 184}function QQ(a){a=a|0;return a|0}function RQ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function SQ(a){a=a|0;return 2}function TQ(a){a=a|0;return VQ()|0}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=WG(b)|0;oe[a&127](d,b);b=HG(d)|0;IG(d);l=c;return b|0}function VQ(){return 2696}function WQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Tf(b)|0;XQ(a,e);l=d;return}function XQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;YQ(e,b);b=ZQ()|0;c[a>>2]=pc(b|0,_Q(e)|0)|0;l=d;return}function YQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;bR(e,aR(c[b>>2]|0)|0);eG(e);l=d;return}function ZQ(){return $Q()|0}function _Q(a){a=a|0;return a|0}function $Q(){return 208}function aR(a){a=a|0;return a|0}function bR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function cR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+wH(d));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){uH(e,d);Dk(b,e)}l=i;return}function dR(a){a=a|0;return 2}function eR(a){a=a|0;return gR()|0}function fR(a,b){a=a|0;b=b|0;b=WG(b)|0;je[a&127](b);return}function gR(){return 2704}function hR(a){a=a|0;return 3}function iR(a){a=a|0;return kR()|0}function jR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=WG(b)|0;YG(e,c);oe[a&127](b,e);IG(e);l=d;return}function kR(){return 2712}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;iL(f,d);kG(e,f);g=Nz(34965)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(W9(e,0,-1,34965,g)|0)==0;T9(e);IG(f);if(j)Ck(b,+((WO(d)|0)>>>0));else h=5}else{T9(e);IG(f);h=5}if((h|0)==5){IL(e,d);Bk(b,e)}l=i;return}function mR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35212;O9(34620,b)|0;l=a;return}function nR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function oR(a){a=a|0;return 1}function pR(a){a=a|0;return rR()|0}function qR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;je[a&127](c);a=HG(c)|0;IG(c);l=b;return a|0}function rR(){return 2724}function sR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=35212;O9(34620,d)|0;YF(a);l=b;return}function tR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=35329;O9(34620,b)|0;l=a;return}function uR(a){a=a|0;return 3}function vR(a){a=a|0;return yR()|0}function wR(){return 35461}function xR(a,b,c){a=a|0;b=+b;c=+c;b=+XG(b);c=+XG(c);ge[a&3](b,c);return}function yR(){return 2728}function zR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Cm(b);return}function AR(a){a=a|0;return 4}function BR(a){a=a|0;return DR()|0}function CR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;oG(f,b);c=FH(c)|0;d=WG(d)|0;ue[a&63](f,c,d);T9(f);l=e;return}function DR(){return 2740}function ER(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Bm(b,d,e);return}function FR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);xm(b,f,e);l=g;return}function GR(a){a=a|0;return 4}function HR(a){a=a|0;return JR()|0}function IR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oG(f,b);YG(g,c);d=WG(d)|0;ue[a&63](f,g,d);IG(g);T9(f);l=e;return}function JR(){return 2756}function KR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uH(f,d);vm(b,f,e);l=g;return}function LR(){Uk();return}function MR(a,b){a=a|0;b=b|0;ym(a,b);return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);wm(d,b);l=c;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;uH(d,a);um(d,b);l=c;return}function PR(a){a=a|0;return 3}function QR(a){a=a|0;return SR()|0}function RR(a,b,c){a=a|0;b=b|0;c=c|0;b=FH(b)|0;c=WG(c)|0;oe[a&127](b,c);return}function SR(){return 2772}function TR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;uH(c,a);Em(c);l=b;return}function UR(a){a=a|0;return 5} -function T7(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Gd[d&63](a,g)|0)>-1?(Gd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Gd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);Z7(b,m,e);l=n;return}function U7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function V7(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Gd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Gd[d&63](g,j)|0)>-1){i=10;break a}if((Gd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=X7(n)|0;U7(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Gd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){Z7(b,o,e);T7(a,b,d,f,h)}l=p;return}function W7(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=Y7(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function Y7(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function Z7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;Zaa(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;Zaa(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function _7(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function $7(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function a8(a,b){a=a|0;b=b|0;b8(a,b)|0;return a|0}function b8(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function c8(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function d8(){return 4188}function e8(b,c){b=b|0;c=c|0;b=t8(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function f8(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=e8(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=n8(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=o8(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=p8(b,c)|0;break}else{b=q8(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function g8(a,b,c){a=a|0;b=b|0;c=c|0;h8(a,b,c)|0;return a|0}function h8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);$aa(b|0,0,e|0)|0;return b|0}function i8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function j8(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(N7()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=k8(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((d[39202+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){i8(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[39202+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;i8(b,0);c[(N7()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=Paa(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=Qaa(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=k8(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[39458+((e*23|0)>>>5&7)>>0]|0;f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=Waa(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=Xaa(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[39202+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=Uaa(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=Paa(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=Qaa(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;f=a[39202+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[39202+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(e>>>0>(d[39202+i>>0]|0)>>>0);c[(N7()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(N7()|0)>>2]=34;g=Qaa(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(N7()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Raa(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function k8(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=l8(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function l8(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((m8(a)|0)==0?(Od[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function m8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Od[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function n8(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function o8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function p8(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function q8(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(_7(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=R7(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function r8(a){a=a|0;return 0}function s8(a){a=a|0;return}function t8(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(c8(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function u8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4432;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(N7()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=v8(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function v8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((w8(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=r8(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=w8(b,d,n,q,p)|0;if(h){Od[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=w8(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)s8(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function w8(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(N7()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)x8(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=y8(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=y8(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(39467+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}z8(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=B8(e,n,y)|0;s=A-r|0;o=0;q=39931;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=Raa(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=39931;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?39931:39933):39932;w=65;break d}}case 117:{n=E;o=0;q=39931;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=39931;r=y;n=1;m=t;break}case 109:{n=D8(c[(N7()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:39941;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){E8(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=G8(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=39931;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=A8(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?39931:39931+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=C8(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=R7(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=39931;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=F8(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}E8(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=F8(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}x8(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;E8(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;E8(d,32,k,u,m);x8(d,q,o);E8(d,48,k,u,m^65536);E8(d,48,s,t,0);x8(d,e,t);E8(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;z8(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function x8(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))T8(b,d,a)|0;return}function y8(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function z8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function A8(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[39979+(b&15)>>0]|0|f;b=Waa(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function B8(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=Waa(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function C8(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=Vaa(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Uaa(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function D8(a){a=a|0;return N8(a,c[(M8()|0)+188>>2]|0)|0}function E8(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;$aa(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{x8(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}x8(a,f,e)}l=g;return}function F8(a,b){a=a|0;b=b|0;if(!a)a=0;else a=K8(a,b,0)|0;return a|0}function G8(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;H8(e)|0;if((z|0)<0){e=-e;C=1;B=39948}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?39949:39954):39951}H8(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;E8(b,32,f,j,h&-65537);x8(b,B,C);x8(b,e!=e|0.0!=0.0?(G?41898:39975):G?39967:39971,3);E8(b,32,f,j,h^8192)}else{r=+I8(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=C8(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[39979+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;E8(b,32,f,F,h);x8(b,s,q);E8(b,48,f,F,h^65536);x8(b,G,k);E8(b,48,j-k|0,0,0);x8(b,o,E);E8(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Xaa(c[j>>2]|0,0,o|0)|0;x=Qaa(x|0,z|0,m|0,0)|0;y=z;v=Vaa(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=Uaa(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=C8(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;E8(b,32,f,j,h);x8(b,B,C);E8(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=C8(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)x8(b,39995,1);if(n>>>0>>0&(k|0)>0)while(1){m=C8(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){$aa(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}x8(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}E8(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=C8(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;x8(b,m,1);if(s&(k|0)<1){m=n;break}x8(b,39995,1);m=n}else{if(m>>>0<=G>>>0)break;$aa(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;x8(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}E8(b,48,k+18|0,18,0);x8(b,v,E-v|0)}E8(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function H8(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function I8(a,b){a=+a;b=b|0;return +(+J8(a,b))}function J8(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=Waa(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+J8(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function K8(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(L8()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(N7()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(N7()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function L8(){return d8()|0}function M8(){return d8()|0}function N8(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[39997+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=40085;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=40085;else{f=40085;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return O8(f,c[e+20>>2]|0)|0}function O8(a,b){a=a|0;b=b|0;return P8(a,b)|0}function P8(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Q8(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Q8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=R8(c[b+8>>2]|0,o)|0;f=R8(c[b+12>>2]|0,o)|0;g=R8(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=R8(c[b+(g<<2)>>2]|0,o)|0;g=R8(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=S8(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=R8(c[b+(f<<2)>>2]|0,o)|0;f=R8(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function R8(a,b){a=a|0;b=b|0;var c=0;c=Yaa(a|0)|0;return ((b|0)==0?a:c)|0}function S8(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function T8(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(U8(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Od[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Od[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);Zaa(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function U8(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function V8(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Zaa(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function W8(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?58580:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(X8()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[3984+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(N7()|0)>>2]=84;f=-1}l=k;return f|0}function X8(){return d8()|0}function Y8(a){a=a|0;return (a+-32|0)>>>0<95|0}function Z8(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0}while(($7(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=k8(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[41889+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[41898+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=k8(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=k8(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=k8(b)|0;if((e|32|0)==120){g=+_8(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+$8(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(N7()|0)>>2]=22;i8(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function _8(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=k8(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=k8(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=k8(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=k8(a)|0;l=Qaa(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=Qaa(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=k8(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else i8(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=Qaa(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=a9(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){i8(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=Xaa(q|0,p|0,2)|0;l=Qaa(l|0,z|0,-32,-1)|0;l=Qaa(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(N7()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(N7()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=Qaa(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=Raa(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=Qaa(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+c9(+b9(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(N7()|0)>>2]=34;h=+e9(h,l)}while(0);return +h}function $8(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=k8(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48){k=0;b=0;while(1){k=Qaa(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=Qaa(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=k8(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=a9(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){i8(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=Qaa(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(N7()|0)>>2]=22;i8(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(N7()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(N7()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4556+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4556+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4556+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=Xaa(c[p>>2]|0,0,29)|0;k=Qaa(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=Uaa(k|0,m|0,1e9,0)|0;k=Vaa(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4588+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+c9(+b9(1.0,105-n|0),j);r=+d9(j,+b9(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+d9(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(N7()|0)>>2]=34}while(0);i=+e9(i,b)}while(0);l=J;return +i}function a9(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=Paa(g|0,b|0,10,0)|0;g=z;e=Qaa(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=Qaa(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=k8(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=Raa(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function b9(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=Xaa(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function c9(a,b){a=+a;b=+b;return +(+h9(a,b))}function d9(a,b){a=+a;b=+b;return +(+f9(a,b))}function e9(a,b){a=+a;b=b|0;return +(+b9(a,b))}function f9(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=Waa(i|0,l|0,52)|0;e=e&2047;m=Waa(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=Xaa(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=g9(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=Xaa(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=Xaa(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=Xaa(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=Xaa(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=Xaa(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=Xaa(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=Xaa(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=Xaa(f|0,d|0,1)|0;g=z;e=e+-1|0;f=Raa(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=Xaa(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=Qaa(f|0,d|0,0,-1048576)|0;d=z;e=Xaa(e|0,0,52)|0;d=d|z;e=o|e}else{e=Waa(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function g9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function h9(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function i9(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((j9(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function j9(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function k9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=r8(a)|0;else f=0;l9(a);g=(c[a>>2]&1|0)!=0;if(!g){e=m9()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;n9()}b=o9(a)|0;b=Cd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)E7(d);if(g){if(f|0)s8(a)}else E7(a);return b|0}function l9(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(q9()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function m9(){Gb(58584);return 58592}function n9(){Qb(58584);return}function o9(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=p9(a)|0;break}d=(r8(a)|0)==0;b=p9(a)|0;if(!d)s8(a)}else{if(!(c[963]|0))b=0;else b=o9(c[963]|0)|0;a=c[(m9()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=r8(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=p9(a)|0|b;if(d|0)s8(a);a=c[a+56>>2]|0}while((a|0)!=0);n9()}while(0);return b|0}function p9(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Od[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function q9(){return d8()|0}function r9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(R7(41902,f<<24>>24,4)|0){e=D7(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(e8(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(e8(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Mb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Mb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Ob(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=45;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[14629]|0))c[e+76>>2]=-1;s9(e)|0}}else{c[(N7()|0)>>2]=22;e=0}l=o;return e|0}function s9(a){a=a|0;var b=0,d=0;b=m9()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;n9();return a|0}function t9(a){a=a|0;var b=0,c=0;c=(c8(a)|0)+1|0;b=D7(c)|0;if(!b)b=0;else Zaa(b|0,a|0,c|0)|0;return b|0}function u9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(r8(e)|0)==0;a=T8(a,f,e)|0;if(!g)s8(e)}else a=T8(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function v9(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(U8(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Od[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function w9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(R7(41902,a[d>>0]|0,4)|0){f=x9(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=M7(Nb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Mb(221,g|0)|0}b=r9(e,d)|0;if(!b){c[h>>2]=e;Pb(6,h|0)|0;b=0}}else b=0}else{c[(N7()|0)>>2]=22;b=0}l=i;return b|0}function x9(b){b=b|0;var c=0,d=0,e=0;d=(e8(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(e8(b,120)|0)==0;d=e?d:d|128;b=(e8(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function y9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=z9(a,b,f)|0;l=e;return d|0}function z9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=46;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=B9(e,b,d)|0;l=g;return h|0}function A9(a,b,c){a=a|0;b=b|0;c=c|0;return F9(a,b,c)|0}function B9(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=r8(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!($7(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=C9(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{D9(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{i8(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0}while(($7(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}i8(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((k8(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){$aa(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;$aa(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=D7(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(W8(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=F7(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(E9(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=D7(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=k8(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=F7(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=k8(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+Z8(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=j8(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{D9(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;i8(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!($7(d[i>>0]|0)|0))break;else m=i}i8(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=k8(b)|0}while(($7(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){E7(k);E7(j)}}else e=0;while(0);if(O|0)s8(b);l=P;return e|0}function C9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function D9(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function E9(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function F9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=R7(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;Zaa(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function G9(a,b,c){a=a|0;b=b|0;c=c|0;return H9(a,b,c)|0}function H9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(r8(a)|0)==0;b=I9(a,b,d)|0;if(!e)s8(a)}else b=I9(a,b,d)|0;return b|0}function I9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Od[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Od[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(r8(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=v9(d,b)|0;s8(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=v9(d,b)|0}while(0);return e|0}function K9(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=r8(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){Zaa(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(m8(f)|0)break;h=Od[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)s8(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)s8(f);return e|0}function L9(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Od[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function M9(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(r8(a)|0)==0;a=L9(a)|0}else a=L9(a)|0;return a|0}function N9(a){a=a|0;return M9(a)|0}function O9(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=v8(c[931]|0,a,e)|0;l=d;return b|0}function P9(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=D7(b)|0;if(a|0)break;a=Kaa()|0;if(!a){a=0;break}ee[a&63]()}return a|0}function Q9(a){a=a|0;E7(a);return}function R9(a){a=a|0;rc()}function S9(a){a=a|0;rc()}function T9(b){b=b|0;if((a[b+11>>0]|0)<0)Q9(c[b>>2]|0);return}function U9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)R9(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{Oz(b,d,(g&255)+1|0)|0;Q9(d);h=16}}else{e=i+1|0;f=P9(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{Oz(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;Oz(f,e,(c[d>>2]|0)+1|0)|0;Q9(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function V9(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=_7(a,b,c)|0;return a|0}function W9(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)S9(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=V9(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function X9(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Y9()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=42042;Z9(41992,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Od[c[(c[180]|0)+16>>2]&63](720,e,f)|0){i=c[f>>2]|0;i=Cd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=42042;c[g+4>>2]=a;c[g+8>>2]=i;Z9(41906,g)}else{c[i>>2]=42042;c[i+4>>2]=a;Z9(41951,i)}}Z9(42030,h)}function Y9(){var a=0,b=0;a=l;l=l+16|0;if(!(zc(58596,44)|0)){b=xc(c[14650]|0)|0;l=a;return b|0}else Z9(42181,a);return 0}function Z9(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[964]|0;v8(b,a,d)|0;J9(10,b)|0;rc()}function _9(a){a=a|0;return}function $9(a){a=a|0;_9(a);Q9(a);return}function aaa(a){a=a|0;return}function baa(a){a=a|0;return}function caa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(gaa(a,b,0)|0))if((b|0)!=0?(g=kaa(b,744,728,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ae[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function daa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);return}function eaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(gaa(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else iaa(0,d,e,f);while(0);return}function faa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function haa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function iaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function jaa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function kaa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(gaa(n,f,0)|0){c[o+48>>2]=1;Ie[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ee[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function laa(a){a=a|0;_9(a);Q9(a);return}function maa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(gaa(a,c[b+8>>2]|0,g)|0)jaa(0,b,d,e,f);else{a=c[a+8>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function naa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ee[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ie[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function oaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(gaa(a,c[b+8>>2]|0,0)|0)haa(0,b,d,e);else{a=c[a+8>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function paa(a){a=a|0;return}function qaa(){var a=0;a=l;l=l+16|0;if(!(yc(58600,85)|0)){l=a;return}else Z9(42230,a)}function raa(a){a=a|0;var b=0;b=l;l=l+16|0;E7(a);if(!(Ac(c[14650]|0,0)|0)){l=b;return}else Z9(42280,b)}function saa(){var a=0,b=0;a=Y9()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)taa(c[b+12>>2]|0);taa(uaa()|0)}function taa(a){a=a|0;var b=0;b=l;l=l+16|0;ee[a&63]();Z9(42333,b)}function uaa(){var a=0;a=c[1149]|0;c[1149]=a+0;return a|0}function vaa(a){a=a|0;_9(a);Q9(a);return}function waa(a,b,c){a=a|0;b=b|0;c=c|0;return gaa(a,b,0)|0}function xaa(a){a=a|0;_9(a);Q9(a);return}function yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(zaa(a,b,0)|0))if(((b|0)!=0?(e=kaa(b,744,800,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(gaa(c[a>>2]|0,c[b>>2]|0,0)|0)?!(gaa(c[a>>2]|0,832,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=kaa(a,744,728,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=kaa(f,744,728,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;Ae[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function zaa(a,b,c){a=a|0;b=b|0;c=c|0;if(gaa(a,b,0)|0)a=1;else a=gaa(b,856,0)|0;return a|0}function Aaa(a){a=a|0;_9(a);Q9(a);return}function Baa(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(gaa(b,c[d+8>>2]|0,h)|0)jaa(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Faa(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Faa(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Caa(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(gaa(b,c[d+8>>2]|0,g)|0)){if(!(gaa(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Gaa(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Gaa(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Faa(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else iaa(0,d,e,f);while(0);return}function Daa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(gaa(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Eaa(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Eaa(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else haa(0,d,e,f);while(0);return}function Eaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;Ae[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Faa(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ie[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Gaa(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ee[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function Haa(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Iaa(a){a=a|0;return}function Jaa(a){a=a|0;return}function Kaa(){var a=0;a=c[14651]|0;c[14651]=a+0;return a|0}function Laa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Od[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function Maa(a){a=a|0;if(!a)a=0;else a=(kaa(a,744,800,0)|0)!=0&1;return a|0}function Naa(){}function Oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Paa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Oaa(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function Qaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Raa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Saa(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Taa(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=Saa(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Saa(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Qaa(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Raa(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Raa(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function Uaa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Taa(a,b,c,d,0)|0}function Vaa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;Taa(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Waa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xaa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Zaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return tc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function _aa(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Zaa(b,c,d)|0;return b|0}function $aa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function aba(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ib(12);return -1}return b|0}function bba(a){a=a|0;return +xd[a&31]()}function cba(a,b){a=a|0;b=b|0;return +yd[a&3](b|0)}function dba(a,b,c){a=a|0;b=b|0;c=c|0;return +zd[a&15](b|0,c|0)}function eba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ad[a&1](b|0,c|0,d|0)}function fba(a){a=a|0;return Bd[a&31]()|0}function gba(a,b){a=a|0;b=b|0;return Cd[a&63](b|0)|0}function hba(a,b,c){a=a|0;b=b|0;c=+c;return Dd[a&1](b|0,+c)|0}function iba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Ed[a&3](b|0,+c,+d)|0}function jba(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Fd[a&1](b|0,+c,+d,+e,+f)|0}function kba(a,b,c){a=a|0;b=b|0;c=c|0;return Gd[a&63](b|0,c|0)|0}function lba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Hd[a&3](b|0,c|0,+d)|0}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Id[a&3](b|0,c|0,+d,+e)|0}function nba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Jd[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function oba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Kd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function pba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Ld[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function qba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Md[a&1](b|0,c|0,+d,e|0)|0}function rba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Nd[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function sba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Od[a&63](b|0,c|0,d|0)|0}function tba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function uba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function vba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function wba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function xba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function yba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function zba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0)|0}function Aba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Wd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xd[a&31](b|0,c|0,d|0,e|0)|0}function Cba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Dba(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Eba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return _d[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Fba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return $d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Gba(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 ae[a&15](b|0,c|0,d|0,e|0,f|0)|0}function Hba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Iba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return ce[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Jba(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return de[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Kba(a){a=a|0;ee[a&63]()}function Lba(a,b){a=a|0;b=+b;fe[a&15](+b)}function Mba(a,b,c){a=a|0;b=+b;c=+c;ge[a&3](+b,+c)}function Nba(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;he[a&3](+b,+c,+d,e|0,f|0,g|0)}function Oba(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;ie[a&1](+b,c|0,d|0)}function Pba(a,b){a=a|0;b=b|0;je[a&127](b|0)}function Qba(a,b,c){a=a|0;b=b|0;c=+c;ke[a&7](b|0,+c)}function Rba(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;le[a&1](b|0,+c,+d)}function Sba(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;me[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function Tba(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;ne[a&3](b|0,+c,d|0,e|0)}function Uba(a,b,c){a=a|0;b=b|0;c=c|0;oe[a&127](b|0,c|0)}function Vba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;pe[a&15](b|0,c|0,+d)}function Wba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;qe[a&1](b|0,c|0,+d,e|0)}function Xba(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;re[a&3](b|0,c|0,+d,e|0,f|0)}function Yba(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;se[a&1](b|0,c|0,+d,e|0,f|0,+g)}function Zba(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;te[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function _ba(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ue[a&63](b|0,c|0,d|0)}function $ba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ve[a&1](b|0,c|0,d|0,+e)}function aca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;we[a&1](b|0,c|0,d|0,+e,f|0)}function bca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function cca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;ye[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function dca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;ze[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ae[a&15](b|0,c|0,d|0,e|0)}function fca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Be[a&1](b|0,c|0,d|0,e|0,+f)}function gca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ce[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function hca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;De[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function ica(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ee[a&15](b|0,c|0,d|0,e|0,f|0)}function jca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Fe[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function kca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ge[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function lca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;He[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function mca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ie[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function nca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Le[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function rca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Ne[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function sca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function tca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Pe[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function uca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Qe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function vca(){S(0);return 0.0}function wca(a){a=a|0;S(1);return 0.0}function xca(a,b){a=a|0;b=b|0;S(2);return 0.0}function yca(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function zca(){S(4);return 0}function Aca(a){a=a|0;S(5);return 0}function Bca(a,b){a=a|0;b=+b;S(6);return 0}function Cca(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Dca(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Eca(a,b){a=a|0;b=b|0;S(9);return 0}function Fca(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Gca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function Ica(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function Jca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function Kca(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function Lca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function Mca(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function Nca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(18);return 0}function Oca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(19);return 0}function Pca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(20);return 0}function Qca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(21);return 0}function Rca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(22);return 0}function Sca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(23);return 0}function Tca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(24);return 0}function Uca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function Vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function Wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec(a|0,b|0,c|0,d|0)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function Yca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function Zca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function _ca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function $ca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function dda(){S(35)}function eda(a){a=+a;S(36)}function fda(a,b){a=+a;b=+b;S(37)}function gda(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function hda(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function ida(a){a=a|0;S(40)}function jda(a,b){a=a|0;b=+b;S(41)}function kda(a,b,c){a=a|0;b=+b;c=+c;S(42)}function lda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function mda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function nda(a,b){a=a|0;b=b|0;S(45)}function oda(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function pda(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function qda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function rda(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function sda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function tda(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function uda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;S(53)}function wda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(54)}function xda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(55)}function yda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(56)}function zda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(57)}function Ada(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(58)}function Bda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(59)}function Cda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(60)}function Dda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(61)}function Eda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(62)}function Fda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(63)}function Gda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(64)}function Hda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(65)}function Ida(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(66)}function Jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(67)}function Kda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(68)}function Lda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(69)}function Mda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(70)}function Nda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(71)}function Oda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(72)}function Pda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(73)} +function $q(b,d){b=b|0;d=d|0;var e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;k=c[11106]|0;h=c[k+6436>>2]|0;m=k+7052|0;if(!(a[k+7040>>0]|0))Bb(10828,5025,12929,34925);if((c[k+7068>>2]|0)==-1)Bb(11120,5025,12930,34925);if((b|0)!=0?!(Pr(m,b)|0):0)b=0;else{b=k+7104|0;i=(c[k+7116>>2]|0)==(c[b>>2]|0);e=k+7088|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];f=+Ul(j);f=f*+ki(j);e=k+7108|0;if(f<+g[e>>2]){c[k+7112>>2]=c[b>>2];g[e>>2]=f}a[k+7085>>0]=i&1;do if(!(((c[k+7044>>2]|d)&2048|0)!=0|i^1)){yl(j,3.5);o=Ej(h+484|0,j)|0;b=h+616|0;e=c[b>>2]|0;if(o){Gw(e,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);break}else{$v(e);o=c[b>>2]|0;Gw(o,j,j+8|0,Lf(42,1.0)|0,0.0,-1,2.0);aw(c[b>>2]|0);break}}while(0);c[k+7120>>2]=c[k+6372>>2];if(i)b=(Mj(c[k+7048>>2]|0)|0)^1;else b=0;a[k+7086>>0]=b&1;b=(d&1024|0)==0&(b^1)?0:m}l=n;return b|0}function ar(){if(!(a[(c[11106]|0)+7040>>0]|0))Bb(10828,5025,12970,34947);else return}function br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k;c[e>>2]=c[b>>2];f=e+4|0;h=b+4|0;c[f>>2]=c[h>>2];i=e+8|0;j=b+8|0;c[i>>2]=c[j>>2];g[e+12>>2]=1.0;if(Zq(a,e,d|2,0)|0){c[b>>2]=c[e>>2];c[h>>2]=c[f>>2];c[j>>2]=c[i>>2];a=1}else a=0;l=k;return a|0}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0;o=l;l=l+32|0;i=o+24|0;j=o+16|0;k=o;m=(a&786432|0)==0;n=a&2;h=(a&514|0)==0;if(m|h?Ck(9974,0)|0:0){e=c[11106]|0;if(m){q=+g[e+6228>>2]*8.0;p=+dn();Ze(i,q,+pg(q-(p+ +g[e+5428>>2]),1.0));eg(+g[i>>2]);f=e+10516|0;d=0;do{a=(d|0)==1;if(a)Nq();Ao(d);r=((d|0)==0?262568:424)|n;a=a?r|524288:r;rn(j);if(rq(13506,0,0,i)|0)c[f>>2]=c[f>>2]&-786433|a&786432;sn(j);Ye(k);qca(k|0,b|0,4-(a>>>1&1)<<2|0)|0;Zq(13519,k,a,0)|0;Zn();d=d+1|0}while((d|0)!=2);gg()}if(h){if(m)Nq();yp(13533,e+10516|0,512)|0}Bk()}l=o;return}function dr(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f*c-e*d,f*d+e*c);return}function er(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Au(a,c[a+48>>2]&65535);Bu(a,b,d,e);return}function fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*d,e+(+g[c+4>>2]-e)*d);return}function gr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0.0;f=l;l=l+80|0;h=f+72|0;i=f+64|0;w=f+56|0;n=f+48|0;v=f+40|0;u=f+8|0;q=f+32|0;p=f+24|0;m=f+16|0;k=f;t=+g[b>>2];x=+g[d>>2];s=t+x;o=+g[b+4>>2];Ze(w,s+1.0,o);r=+g[d+4>>2]+1.0;Ze(n,x+2.0,r);c[i>>2]=c[w>>2];c[i+4>>2]=c[w+4>>2];c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];Cu(a,i,h,1,-16777216);Ze(v,s,o);b=d;n=c[b>>2]|0;b=c[b+4>>2]|0;d=u;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[v>>2];c[i+4>>2]=c[v+4>>2];c[h>>2]=c[u>>2];c[h+4>>2]=c[u+4>>2];Cu(a,i,h,1,-1);s=(c[j>>2]=n,+g[j>>2]);e=t+e-s;Ze(q,e+-1.0,o);Ze(p,s+2.0,r);c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];Cu(a,i,h,0,-16777216);Ze(m,e,o);d=k;c[d>>2]=n;c[d+4>>2]=b;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];Cu(a,i,h,0,-1);l=f;return}function hr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0.0;j=l;l=l+48|0;i=j;b=j+24|0;d=j+16|0;e=j+8|0;f=Zi()|0;if(((a[f+149>>0]|0)==0?(h=c[11106]|0,n=+g[f+224>>2],k=n+ +g[f+252>>2],m=f+220|0,Ze(d,+g[m>>2],n),Ze(e,+g[m>>2]+1.0,k),Yg(b,d,e),Ze(d,+Ul(b),0.0),$g(d,0.0),dh(b,0,0)|0):0)?(m=c[f+616>>2]|0,Ze(d,+g[b>>2],+g[b+4>>2]),Ze(e,+g[b>>2],+g[b+12>>2]),Fw(m,d,e,Lf(27,1.0)|0,1.0),a[h+10628>>0]|0):0)oj(10554,i);l=j;return}function ir(a){a=a|0;return (c[a>>2]|0)==0|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[b>>2]+ +g[a>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[c>>2]+ +g[d>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function kr(){var b=0,c=0;c=l;l=l+16|0;b=c;if(!(a[(Zi()|0)+149>>0]|0)){Ze(b,0.0,0.0);$g(b,0.0)}l=c;return}function lr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=l;l=l+32|0;c=b+8|0;e=b;d=wg()|0;f=d+220|0;nf(e,f,a);Yg(c,f,e);a=lh(d+484|0,c)|0;l=b;return a|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=(wg()|0)+484|0;Yg(d,a,b);b=lh(e,d)|0;l=c;return b|0}function nr(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function or(){var b=0,d=0,e=0,f=0,h=0,i=0;i=l;l=l+16|0;b=i;d=Zi()|0;if(!(a[d+149>>0]|0)){e=c[11106]|0;f=d+364|0;h=c[f>>2]|0;c[f>>2]=0;if(+g[d+252>>2]>0.0){Ze(b,0.0,0.0);$g(b,0.0)}else{Ze(b,0.0,+g[e+6228>>2]);$g(b,0.0)}c[f>>2]=h}l=i;return}function pr(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=Zi()|0;if((a[j+149>>0]|0)==0?(b=j+468|0,c[b>>2]|0):0){f=c[11106]|0;gg();aj();h=c[b>>2]|0;e=h+40|0;i=j+224|0;g[e>>2]=+pg(+g[e>>2],+g[i>>2]);b=h+12|0;d=(c[b>>2]|0)+1|0;c[b>>2]=d;if((d|0)<(c[h+16>>2]|0)){k=+Ym(d);e=j+456|0;d=j+464|0;g[d>>2]=k-+g[e>>2]+ +g[f+5420>>2];nw(c[j+616>>2]|0,c[b>>2]|0);b=c[h+36>>2]|0}else{d=j+464|0;g[d>>2]=0.0;nw(c[j+616>>2]|0,0);c[b>>2]=0;b=c[e>>2]|0;c[h+36>>2]=b;e=j+456|0}g[j+220>>2]=+(~~(+g[j+20>>2]+ +g[e>>2]+ +g[d>>2])|0);c[i>>2]=b;g[j+252>>2]=0.0;g[j+256>>2]=0.0;sq(-1);eg(+qr(-1)*.6499999761581421)}return}function qr(a){a=a|0;var b=0,d=0,e=0.0;b=c[(wg()|0)+468>>2]|0;if(!b)Bb(10588,5025,12403,33492);if((a|0)<0)a=c[b+12>>2]|0;d=b+44|0;e=+g[(tr(d,a+1|0)|0)>>2];return +(+ur(b,e-+g[(tr(d,a)|0)>>2]))}function rr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function sr(){var a=0;a=c[(wg()|0)+468>>2]|0;if(!a)a=1;else a=c[a+16>>2]|0;return a|0}function tr(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function ur(a,b){a=a|0;b=+b;return +((+g[a+24>>2]-+g[a+20>>2])*b)}function vr(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0.0,j=0,k=0,l=0.0;f=c[11106]|0;e=c[(c[f+6436>>2]|0)+468>>2]|0;a:do if(e|0){k=f;while(1){if((b|0)<0)b=c[e+12>>2]|0;j=e+44|0;if((b|0)>=(c[j>>2]|0)){b=6;break}f=e+4|0;h=c[f>>2]|0;if((h&4|0)==0?(b|0)<((c[e+16>>2]|0)+-1|0):0){i=+wr(e,b,(a[e+9>>0]|0)!=0);h=c[f>>2]|0;f=1}else{i=0.0;f=0}if(!(h&8))d=+sf(d,+g[e+24>>2]-+g[k+5448>>2]*+((c[e+16>>2]|0)-b|0));l=+xr(e,d-+g[e+20>>2]);g[(tr(j,b)|0)>>2]=l;if(!f){b=14;break}d=d+ +pg(+g[k+5448>>2],i);k=c[11106]|0;e=c[(c[k+6436>>2]|0)+468>>2]|0;if(!e)break a;else b=b+1|0}if((b|0)==6)Bb(10602,5025,12419,33538);else if((b|0)==14)return}while(0);Bb(10588,5025,12415,33538)}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;if((b|0)<0)b=c[a+12>>2]|0;h=a+44|0;f=tr(h,b+1|0)|0;if(d){e=+g[f+4>>2];b=(tr(h,b)|0)+4|0}else{e=+g[f>>2];b=tr(h,b)|0}return +(+ur(a,e-+g[b>>2]))}function xr(a,b){a=a|0;b=+b;return +(b/(+g[a+24>>2]-+g[a+20>>2]))}function yr(a,b){a=a|0;b=+b;var d=0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12436,33507);if((a|0)<0)a=c[d+12>>2]|0;vr(a+1|0,+Ym(a)+b);return}function zr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.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,v=0,w=0.0;v=l;l=l+32|0;t=v;i=c[11106]|0;u=Zi()|0;if((d|0)<=1)Bb(10639,5025,12470,10657);h=u+468|0;if(c[h>>2]|0)Bb(10670,5025,12471,10657);s=(b|0)!=0;Ao(s?287454023:d+287454023|0);s=Eg(u,s?b:10698,0)|0;Zn();q=Ar(u,s)|0;if((c[q>>2]|0)!=(s|0))Bb(10706,5025,12481,10657);c[q+12>>2]=0;r=q+16|0;c[r>>2]=d;s=q+4|0;c[s>>2]=e;c[h>>2]=q;f=+g[u+60>>2];if(!(f!=0.0))f=+g[u+28>>2]-+g[u+136>>2];w=+g[u+456>>2];o=q+20|0;g[o>>2]=w-+g[i+5420>>2];p=q+24|0;g[p>>2]=f-+g[u+108>>2];k=c[u+224>>2]|0;c[q+28>>2]=k;c[q+32>>2]=c[u+244>>2];c[q+40>>2]=k;c[q+36>>2]=k;g[u+464>>2]=0.0;k=u+20|0;g[u+220>>2]=+(~~(+g[k>>2]+w+0.0)|0);m=q+44|0;b=c[m>>2]|0;n=d+1|0;if(!((b|0)==0|(b|0)==(n|0))){Br(m,0);b=c[m>>2]|0}h=(b|0)==0;a[q+8>>0]=h&1;if(h){Cr(m,n);f=+(d|0);b=0;do{Dr(t);g[t>>2]=+(b|0)/f;Er(m,t);b=b+1|0}while((b|0)!=(n|0));if((d|0)>=0)j=13}else j=13;if((j|0)==13){h=i+5448|0;i=u+484|0;b=0;do{e=tr(m,b)|0;f=+g[e>>2];if(!(c[s>>2]&8))f=+sf(f,+xr(q,+g[p>>2]-+g[o>>2]-+g[h>>2]*+((c[r>>2]|0)-b|0)));g[e>>2]=f;if((b|0)==(d|0))b=b+1|0;else{f=+g[k>>2]+.5;f=+bf(f+ +Ym(b)+-1.0);w=+g[k>>2]+.5;b=b+1|0;rl(t,f,-3402823466385288598117041.0e14,+bf(w+ +Ym(b)+-1.0),3402823466385288598117041.0e14);j=e+12|0;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];Cj(j,i)}}while((b|0)!=(n|0))}gw(c[u+616>>2]|0,c[r>>2]|0);sq(-1);eg(+qr(-1)*.6499999761581421);l=v;return}function Ar(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+64|0;e=g;d=a+600|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Pg(d,a)|0)>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){f=5;break a}}a=Pg(d,a)|0}else f=5;while(0);if((f|0)==5){Eu(e);Du(d,e);Qg(e);a=Fu(d)|0;c[a>>2]=b}l=g;return a|0}function Br(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Cr(a,tv(a,b)|0);c[a>>2]=b;return}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Dr(a){a=a|0;yg(a+12|0);g[a+4>>2]=0.0;g[a>>2]=0.0;c[a+8>>2]=0;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Cr(a,tv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Fr(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,h=0.0;e=c[11106]|0;f=c[e+6436>>2]|0;if((b|0)<=0)Bb(13543,5025,12350,13560);if((c[e+6464>>2]|0)!=((c[a>>2]|0)+b|0))Bb(13583,5025,12351,13560);h=+g[e+208>>2]-+g[e+6484>>2]+4.0-+g[f+20>>2];d=+Ym(b+-1|0);e=e+5448|0;d=+pg(h,d+ +g[e>>2]);if(c[a+4>>2]&4){h=+Ym(b+1|0);d=+sf(d,h-+g[e>>2])}return +d}function Gr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Zi()|0;if((a|0)<=0)Bb(10735,5025,12610,33458);e=c[e+468>>2]|0;if(e|0?(c[e+16>>2]|0)!=(a|0):0)Ql();if((a|0)!=1)zr(b,a,(d^1)&1);return}function Hr(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;go(a|0?a:10754);return}function Ir(a){a=a|0;var b=0;b=Zi()|0;nq(0.0);b=b+272|0;c[b>>2]=(c[b>>2]|0)+1;Yn(a|0?a:10754);return}function Jr(){var b=0,d=0,e=0,f=0;d=c[11106]|0;f=c[d+6436>>2]|0;pq(0.0);e=f+272|0;b=(c[e>>2]|0)+-1|0;c[e>>2]=b;if(((((c[d+6784>>2]|0)==0?(c[d+6664>>2]|0)==(f|0):0)?Gq()|0:0)?(a[d+6748>>0]|0)!=0:0)?(c[f+276>>2]&1<>2]|0;Kh(b,c[d+6740>>2]|0);lo();b=c[e>>2]|0}f=f+276|0;c[f>>2]=(1<>2];Zn();return}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b?10771:10776;Fn(10764,e);l=d;return}function Lr(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+112|0;i=j+24|0;g=j+8|0;f=j;e=j+40|0;if(!d){c[i>>2]=a;h[i+8>>3]=b;Fn(10790,i)}else{c[f>>2]=d;yf(e,64,10782,f)|0;c[g>>2]=a;h[g+8>>3]=b;Fn(e,g)}l=j;return}function Mr(b){b=b|0;var d=0;d=b+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;a[d+12>>0]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=-1;a[b+34>>0]=0;a[b+33>>0]=0;return}function Nr(a,b,c){a=a|0;b=b|0;c=c|0;If(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2],+g[b+8>>2]*+g[c+8>>2],+g[b+12>>2]*+g[c+12>>2]);return}function Or(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Uu(a,Vu(a,b)|0);c[a>>2]=b;return}function Pr(a,b){a=a|0;b=b|0;if((c[a+16>>2]|0)==-1)a=0;else a=(jaa(b,a+20|0)|0)==0;return a|0}function Qr(a){a=a|0;var b=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+208|0;y=z+184|0;x=z+176|0;w=z+168|0;v=z+160|0;u=z+152|0;t=z+144|0;s=z+136|0;r=z+112|0;q=z+96|0;p=z+88|0;n=z+80|0;m=z+64|0;k=z+56|0;j=z+48|0;f=z+40|0;i=z+24|0;e=z+8|0;b=z;if(ti(11149,a,0)|0){c[b>>2]=31712;Fn(11163,b);B=1.0e3/+g[(Ch()|0)+872>>2];A=+g[(Ch()|0)+872>>2];h[e>>3]=B;h[e+8>>3]=A;Fn(11177,e);e=c[(Ch()|0)+876>>2]|0;b=c[(Ch()|0)+880>>2]|0;o=(c[(Ch()|0)+880>>2]|0)/3|0;c[i>>2]=e;c[i+4>>2]=b;c[i+8>>2]=o;Fn(11222,i);c[f>>2]=c[11363];Fn(11261,f);xp(11277,11276)|0;Nq();o=c[11106]|0;Rr(o+6384|0,11330);b=o+6892|0;c[j>>2]=c[b>>2];if(uo(11338,11347,j)|0){if((c[b>>2]|0)>0){a=0;do{Sr(0,c[(Xi(b,a)|0)>>2]|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Jr()}j=o+6540|0;c[k>>2]=c[j>>2];if(uo(11369,11376,k)|0){if((c[j>>2]|0)>0){f=0;do{a=c[(Uj(j,f)|0)+4>>2]|0;i=c[(Uj(j,f)|0)>>2]|0;if(!a){a=11431;b=46144;e=46144}else{e=c[a+8>>2]|0;a=c[a>>2]|0;b=e&16777216|0?11436:46144;e=e&268435456|0?11449:46144}c[m>>2]=i;c[m+4>>2]=a;c[m+8>>2]=b;c[m+12>>2]=e;Go(11399,m);f=f+1|0}while((f|0)<(c[j>>2]|0))}Jr()}if(wo(11460)|0){a=c[o+6440>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[n>>2]=a;Fn(11513,n);a=c[o+6444>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[p>>2]=a;Fn(11533,p);a=c[o+6456>>2]|0;B=+g[o+6460>>2];c[q>>2]=c[o+6448>>2];c[q+4>>2]=a;h[q+8>>3]=B;Fn(11557,q);q=c[o+6468>>2]|0;B=+g[o+6472>>2];a=c[1252+(c[o+6496>>2]<<2)>>2]|0;c[r>>2]=c[o+6464>>2];c[r+4>>2]=q;h[r+8>>3]=B;c[r+16>>2]=a;Fn(11593,r);a=c[o+6492>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[s>>2]=a;Fn(11648,s);a=c[o+6664>>2]|0;if(!a)a=11431;else a=c[a>>2]|0;c[t>>2]=a;Fn(11669,t);t=c[o+6740>>2]|0;c[u>>2]=c[o+6668>>2];c[u+4>>2]=t;Fn(11685,u);u=d[o+873>>0]|0;c[v>>2]=d[o+872>>0];c[v+4>>2]=u;Fn(11713,v);v=c[o+6684>>2]|0;c[w>>2]=c[o+6672>>2];c[w+4>>2]=v;Fn(11743,w);w=d[o+6751>>0]|0;c[x>>2]=d[o+6750>>0];c[x+4>>2]=w;Fn(11785,x);w=c[o+7060>>2]|0;x=c[o+7056>>2]|0;c[y>>2]=d[o+7040>>0];c[y+4>>2]=w;c[y+8>>2]=o+7072;c[y+12>>2]=x;Fn(11835,y);Jr()}}cj();l=z;return}function Rr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=f;if(uo(b,13633,e)|0){if((c[a>>2]|0)>0){b=0;do{Mu(c[(ni(a,b)|0)>>2]|0,6537);b=b+1|0}while((b|0)<(c[a>>2]|0))}Jr()}l=d;return}function Sr(b,d){b=b|0;d=d|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0.0,L=0.0,M=0.0,N=0,O=0,P=0;I=l;l=l+496|0;G=I+88|0;F=I+40|0;H=I+32|0;E=I;f=I+472|0;A=I+168|0;B=I+144|0;C=I+136|0;w=c[d+44>>2]|0;D=d+24|0;x=c[D>>2]|0;z=d+12|0;y=c[z>>2]|0;i=c[d>>2]|0;c[E>>2]=11338;c[E+4>>2]=(w|0)==0?46144:w;c[E+8>>2]=x;c[E+12>>2]=y;c[E+16>>2]=i;i=vo(d,14049,E)|0;if((fn()|0)==(d|0)){ah(0.0,-1.0);Nu(f,255,100,100,255);Ou(E,f);Hn(E,14086,I+24|0);if(i)Jr()}else{f=c[11106]|0;y=f+6920|0;if(b|0?hh(0)|0:0){x=b+20|0;nf(E,x,b+28|0);Gw(y,x,E,-16711681,0.0,15,1.0)}if(i){b=Pu(d)|0;if(b>>>0<(Qu(d)|0)>>>0){t=d+20|0;u=E+16|0;v=E+20|0;w=B+24|0;x=A+300|0;q=f+6956|0;r=E+8|0;s=A+8|0;p=0;while(1){f=c[b+24>>2]|0;if(!f){if(c[b>>2]|0){if((c[z>>2]|0)>0)o=c[t>>2]|0;else o=0;k=b-(Pu(d)|0)>>5;m=(c[z>>2]|0)>0?14197:14205;n=c[b+20>>2]|0;f=b+4|0;M=+g[f>>2];L=+g[b+8>>2];K=+g[b+12>>2];J=+g[b+16>>2];c[F>>2]=c[b>>2];c[F+4>>2]=m;c[F+8>>2]=n;h[F+16>>3]=M;h[F+24>>3]=L;h[F+32>>3]=K;h[F+40>>3]=J;k=vo(k,14132,F)|0;if(a[11276]|0?hh(0)|0:0){$i(E,f);yg(A);if((c[b>>2]|0)>0){i=(o|0)==0;f=p;do{if(i)j=f;else j=e[o+(f<<1)>>1]|0;Ru(A,Su(D,j)|0);f=f+1|0}while((f|0)<((c[b>>2]|0)+p|0))}Tu(E);Gw(y,E,r,-16711681,0.0,15,1.0);Tu(A);Gw(y,A,s,-65281,0.0,15,1.0)}if(k){yq(E,((c[b>>2]|0)>>>0)/3|0,-1.0);n=(o|0)==0;a:while(1){if(!(vg(E)|0))break;f=c[u>>2]|0;if((f|0)>=(c[v>>2]|0))continue;m=(f*3|0)+p|0;while(1){i=B;do{Xe(i);i=i+8|0}while((i|0)!=(w|0));j=0;k=A;while(1){if(n)i=m;else i=e[o+(m<<1)>>1]|0;i=Su(D,i)|0;P=i;O=c[P+4>>2]|0;N=B+(j<<3)|0;c[N>>2]=c[P>>2];c[N+4>>2]=O;J=+g[i>>2];K=+g[i+4>>2];L=+g[i+8>>2];M=+g[i+12>>2];i=c[i+16>>2]|0;c[G>>2]=(j|0)==0?14271:14275;c[G+4>>2]=m;h[G+8>>3]=J;h[G+16>>3]=K;h[G+24>>3]=L;h[G+32>>3]=M;c[G+40>>2]=i;k=k+(yf(k,x-k|0,14217,G)|0)|0;m=m+1|0;if((j|0)>=2)break;else j=j+1|0}Ze(C,0.0,0.0);rq(A,0,0,C)|0;if(hh(0)|0){P=c[q>>2]|0;c[q>>2]=P&-2;rw(y,B,3,-16711681,1,1.0);c[q>>2]=P}f=f+1|0;if((f|0)>=(c[v>>2]|0))continue a}}Jr();zq(E)}}}else{P=c[b+28>>2]|0;c[H>>2]=f;c[H+4>>2]=P;Go(14106,H)}p=(c[b>>2]|0)+p|0;b=b+32|0;if(b>>>0>=(Qu(d)|0)>>>0)break}}Jr()}}l=I;return}function Tr(a){a=a|0;return c[a+8>>2]|0}function Ur(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Vr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Wr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xr(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Zr(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function _r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function $r(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function as(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function bs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function cs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ds(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function es(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function is(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function js(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ns(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function ps(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function qs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0;s=c[11106]|0;q=c[s+6436>>2]|0;t=c[s+6740>>2]|0;a:do if((t|0)==(c[q+324>>2]|0)){r=s+6716|0;c[r>>2]=(c[r>>2]|0)+1;r=c[s+6784>>2]|0;if(r>>>0<2){f=b+4|0;h=+g[q+488>>2];i=+g[q+496>>2];k=+gi(+g[f>>2],h,i);g[f>>2]=k;f=b+12|0;d=b+8|0;e=f;j=+g[b>>2]}else{h=+g[q+484>>2];i=+g[q+492>>2];j=+gi(+g[b>>2],h,i);g[b>>2]=j;f=b+8|0;d=f;e=b+12|0;k=+g[b+4>>2]}g[f>>2]=+gi(+g[f>>2],h,i);w=+g[d>>2];v=+g[s+6700>>2];i=+g[s+6708>>2];o=+ss(j,w,v,i);m=+g[e>>2];x=+Pl(k,m,.20000000298023224);l=+Pl(k,m,.800000011920929);n=+g[s+6704>>2];h=+g[s+6712>>2];p=+Pl(n,h,.20000000298023224);p=+ss(x,l,p,+Pl(n,h,.800000011920929));f=p!=0.0;o=o!=0.0&f?o/1.0e3+(o>0.0?1.0:-1.0):o;l=+B(+p)+ +B(+o);i=j+w-(v+i);h=k+m-(n+h);j=+B(+i)+ +B(+h);do if(!(f|o!=0.0))if(i!=0.0|h!=0.0){k=j;m=h;n=i;b=ts(i,h)|0;break}else{k=0.0;m=0.0;n=0.0;b=(c[q+280>>2]|0)>>>0>=(c[s+6668>>2]|0)>>>0&1;break}else{k=l;m=p;n=o;b=ts(o,p)|0}while(0);d=a+12|0;i=+g[d>>2];do if((b|0)==(r|0)){if(l>2]=l;g[a+16>>2]=j;b=1;break a}if(l==i){b=a+16|0;h=+g[b>>2];if(j>2]=j;b=1;break}if(j==h?((r&-2|0)==2?p:o)<0.0:0)b=1;else b=0}else b=0}else b=0;while(0);if((i==3402823466385288598117041.0e14?(u=a+20|0,(t|0)==1?k<+g[u>>2]:0):0)?(c[(c[s+6664>>2]|0)+8>>2]&268435456|0)==0:0){if(((!(n<0.0&(r|0)==0)?!(n>0.0&(r|0)==1):0)?!(m<0.0&(r|0)==2):0)?!(m>0.0&(r|0)==3):0)break;g[u>>2]=k;b=1}}else b=0;while(0);return b|0}function ss(a,b,c,d){a=+a;b=+b;c=+c;d=+d;if(!(b+B(+b);return (c?a>0.0&1:b>0.0?3:2)|0}function us(a,b){a=a|0;b=b|0;return W8(a)|0}function vs(a,b){a=a|0;b=b|0;X8(a);return}function ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function xs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function ys(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function As(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;f=d;j=b+28|0;Xe(j);m=b+36|0;Xe(m);n=b+44|0;Xe(n);h=b+52|0;Xe(h);e=b+64|0;yg(e);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;Ze(f,0.0,0.0);i=f;k=c[i>>2]|0;i=c[i+4>>2]|0;c[n>>2]=k;c[n+4>>2]=i;c[m>>2]=k;c[m+4>>2]=i;c[j>>2]=k;c[j+4>>2]=i;Ze(f,0.0,0.0);j=f;i=c[j+4>>2]|0;c[h>>2]=c[j>>2];c[h+4>>2]=i;a[b+60>>0]=0;yg(f);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[b+80>>2]=0;c[b+84>>2]=0;g[b+88>>2]=3402823466385288598117041.0e14;l=d;return}function Bs(a){a=a|0;yg(a+24|0);Vs(a);return}function Cs(a){a=a|0;Xh(a);return}function Ds(a){a=a|0;var b=0;b=a+24|0;do{Ws(a);a=a+12|0}while((a|0)!=(b|0));return}function Es(a){a=a|0;Mr(a);return}function Fs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Gs(a){a=a|0;cs(a+4|0);Hs(a+16|0);Hs(a+28|0);sca(a|0,0,3284)|0;return}function Hs(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Is(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Js(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ks(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ls(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ms(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ns(a){a=a|0;Ms(a+28|0);Ms(a+16|0);ns(a+4|0);return}function Os(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ps(a){a=a|0;Lv(a);is(a+104|0);js(a+84|0);ks(a+72|0);ls(a+60|0);ms(a+24|0);ns(a+12|0);os(a);return}function Qs(a){a=a|0;var b=0;b=a+24|0;do{b=b+-12|0;Xs(b)}while((b|0)!=(a|0));return}function Rs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ss(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ts(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Us(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Vs(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;g[a+20>>2]=3402823466385288598117041.0e14;g[a+16>>2]=3402823466385288598117041.0e14;g[a+12>>2]=3402823466385288598117041.0e14;yg(d);a=a+24|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];l=b;return}function Ws(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Xs(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Ys(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;n=l;l=l+64|0;h=n+48|0;j=n+40|0;k=n+32|0;r=n+24|0;i=n+16|0;p=n+8|0;o=n;q=b+20|0;lf(k,b+516|0,q);Ze(r,1.0,1.0);lf(j,k,r);lf(p,b+524|0,q);Ze(o,1.0,1.0);nf(i,p,o);Yg(h,j,i);if(!(Ej(h,d)|0)){i=c[11106]|0;do if(a[b+132>>0]|0){e=+g[d>>2];if(e<+g[h>>2]){g[b+116>>2]=e+ +g[b+108>>2]-+g[i+5420>>2];g[b+124>>2]=0.0;break}e=+g[d+8>>2];if(e>=+g[h+8>>2]){g[b+116>>2]=e+ +g[b+108>>2]+ +g[i+5420>>2];g[b+124>>2]=1.0}}while(0);e=+g[d+4>>2];if(!(e<+g[h+4>>2])){e=+g[d+12>>2];if(e>=+g[h+12>>2]){f=1.0;e=e+ +g[b+112>>2]+ +g[i+5424>>2];m=11}}else{f=0.0;e=e+ +g[b+112>>2]-+g[i+5424>>2];m=11}if((m|0)==11){g[b+120>>2]=e;g[b+128>>2]=f}ul(j,b);lf(k,b+108|0,j);jr(d,k)}l=n;return}function Zs(a){a=a|0;var b=0;a:do if(a|0){b=a;while(1){if((c[b+8>>2]&352321536|0)!=16777216)break;b=c[b+620>>2]|0;if(!b)break a}if((b|0)!=(a|0))c[b+640>>2]=a}while(0);return}function _s(){var b=0,e=0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;s=l;l=l+16|0;m=s+8|0;n=s;r=c[11106]|0;o=r+6720|0;if(!(c[o>>2]|0)){b=Pn(3,1)|0;if((a[r+233>>0]|0)!=0?nh(0,1)|0:0)e=(c[r+28>>2]&1|0)!=0;else e=0}else{e=0;b=0}do if(b|e){b=c[r+6664>>2]|0;if(!b){b=dt((c[r+6384>>2]|0)+-1|0,-2147483647,-1)|0;if(!b)break}c[o>>2]=c[b+632>>2];g[r+6728>>2]=0.0;g[r+6724>>2]=0.0;a[r+6732>>0]=(e^1)&1;c[r+6736>>2]=e?3:4}while(0);k=r+12|0;i=r+6724|0;f=+g[k>>2]+ +g[i>>2];g[i>>2]=f;a:do if(c[o>>2]|0){h=r+6736|0;b=c[h>>2]|0;do if((b|0)==4){e=r+6728|0;t=+g[e>>2];f=+pg(t,+Kf((f+-.20000000298023224)/.05000000074505806));g[e>>2]=f;b=(Pn(12,4)|0)&1;b=b-((Pn(13,4)|0)&1)|0;if(b){et(b);g[e>>2]=1.0;f=1.0}if(Qh(3)|0){if(!(c[o>>2]|0)){b=0;e=0;break a}b=c[h>>2]|0;break}h=r+6732|0;i=d[h>>0]&f<1.0;b=i&255;a[h>>0]=b;if((i|0)!=0?(c[r+6664>>2]|0)!=0:0){e=0;b=1}else if(!(b<<24>>24)){e=c[o>>2]|0;b=0}else{e=0;b=0}c[o>>2]=0;break a}while(0);if((b|0)==3){h=r+6728|0;t=+g[h>>2];g[h>>2]=+pg(t,+Kf((+g[i>>2]+-.15000000596046448)/.03999999910593033));if(nh(0,1)|0)et(a[r+234>>0]|0?1:-1);if(!(a[r+233>>0]|0)){b=0;e=c[o>>2]|0}else{b=0;e=0}}else{b=0;e=0}}else{b=0;e=0}while(0);if((c[r+6464>>2]|0)!=0?(a[r+6478>>0]|0)==0:0)i=b;else if(Pn(16,2)|0){i=$h(r+208|0)|0;i=b|i^($h(r+900|0)|0)^1}else i=b;h=c[o>>2]|0;if(h|0?(c[h+8>>2]&4|0)==0:0){Xe(m);b=r+6736|0;h=c[b>>2]|0;if((h|0)==3)if(!(a[r+234>>0]|0)){Oh(n,1,0,0.0,0.0);v=n;u=c[v+4>>2]|0;h=m;c[h>>2]=c[v>>2];c[h+4>>2]=u;h=c[b>>2]|0;b=35}else b=36;else b=35;if((b|0)==35)if((h|0)==4){Oh(n,4,0,0.0,0.0);h=n;v=c[h>>2]|0;h=c[h+4>>2]|0;u=m;c[u>>2]=v;c[u+4>>2]=h;f=(c[j>>2]=v,+g[j>>2])}else b=36;if((b|0)==36)f=+g[m>>2];if(!(!(f!=0.0)?!(+g[m+4>>2]!=0.0):0)){t=+g[k>>2]*800.0;af(n,m,+bf(t*+sf(+g[r+156>>2],+g[r+160>>2])));Ph((c[o>>2]|0)+12|0,n);a[r+6751>>0]=1;ll(c[o>>2]|0)}}if(e|0){v=c[r+6664>>2]|0;if(!((v|0)!=0?(e|0)==(c[v+632>>2]|0):0)){a[r+6750>>0]=0;a[r+6751>>0]=1;b=ft(e)|0;ri(b);dj(b);if(!(c[b+644>>2]|0))Jh(b,0);if((c[b+332>>2]|0)==2)c[r+6740>>2]=1}c[o>>2]=0}if(i?(p=r+6664|0,q=c[p>>2]|0,q|0):0){b=c[q+332>>2]|0;if(!(b&2)){e=q;do{if((c[e+8>>2]&352321536|0)!=16777216)break;e=c[e+620>>2]|0}while((c[e+332>>2]&2|0)==0);if((e|0)!=(q|0)){dj(e);c[e+640>>2]=q;b=c[(c[p>>2]|0)+332>>2]|0}}a[r+6750>>0]=0;a[r+6751>>0]=1;if(!(b&2))b=0;else b=c[r+6740>>2]^1;$s(b)}l=s;return}function $s(a){a=a|0;var b=0,d=0,e=0;d=c[11106]|0;c[d+6740>>2]=a;d=d+6664|0;b=c[d>>2]|0;if(!a){b=ft(b)|0;c[d>>2]=b;a=c[b+644>>2]|0;if(!a)e=4;else Hq(a,0,b+652|0)}else e=4;if((e|0)==4)Jh(b,1);return}function at(a,b){a=a|0;b=b|0;var c=0.0;c=+Mh(a,3);return c+ +Mh(b,3)>0.0|0}function bt(a){a=a|0;return +g[a>>2]!=3402823466385288598117041.0e14|0}function ct(a){a=a|0;if(+g[a>>2]>+g[a+8>>2])a=1;else a=+g[a+4>>2]>+g[a+12>>2];return a|0}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a:do if((a|0)>-1){e=(c[11106]|0)+6384|0;while(1){if((a|0)==(b|0)?1:(a|0)>=(c[e>>2]|0)){a=0;break a}if(Gm(c[(ni(e,a)|0)>>2]|0)|0)break;a=a+d|0;if((a|0)<=-1){a=0;break a}}a=c[(ni(e,a)|0)>>2]|0}else a=0;while(0);return a|0}function et(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;g=f+6720|0;d=c[g>>2]|0;if(!d)Bb(12238,5025,2797,12259);if(!(c[d+8>>2]&134217728)){e=gt(d)|0;d=dt(e+b|0,-2147483647,b)|0;if(!d){if((b|0)<0)d=(c[f+6384>>2]|0)+-1|0;else d=0;d=dt(d,e,b)|0}c[g>>2]=d;a[f+6732>>0]=0}return}function ft(a){a=a|0;var b=0;b=c[a+640>>2]|0;return ((b|0)==0?a:b)|0}function gt(a){a=a|0;var b=0,d=0,e=0;e=(c[11106]|0)+6384|0;d=c[e>>2]|0;while(1){b=d+-1|0;if((d|0)<=0){b=-1;break}if((c[(ni(e,b)|0)>>2]|0)==(a|0))break;else d=b}return b|0}function ht(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){ig(b,it(b,e+1|0)|0);e=c[b>>2]|0}f=a[d>>0]|0;d=c[b+8>>2]|0;c[b>>2]=e+1;a[d+e>>0]=f;return}function it(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jt(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+32|0;e=d;b=(c[11106]|0)+10604|0;lt(e);kt(b,e);b=mt(b)|0;c[b>>2]=uf(a)|0;c[b+4>>2]=Af(a,0,0)|0;l=d;return b|0}function kt(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;if((e|0)==(c[b+4>>2]|0)){nt(b,ot(b,e+1|0)|0);e=c[b>>2]|0}f=c[b+8>>2]|0;c[b>>2]=e+1;b=f+(e*28|0)|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];a[b+24>>0]=a[d+24>>0]|0;return}function lt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;f=d;e=b+8|0;Xe(e);h=b+16|0;Xe(h);c[b>>2]=0;c[b+4>>2]=0;Ze(f,0.0,0.0);g=c[f>>2]|0;f=c[f+4>>2]|0;c[h>>2]=g;c[h+4>>2]=f;c[e>>2]=g;c[e+4>>2]=f;a[b+24>>0]=0;l=d;return}function mt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*28|0)|0;else Bb(39063,39072,1128,14585);return 0}function nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ot(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pt(a,b){a=a|0;b=b|0;ig(a,b);return}function qt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function rt(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function st(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=uf(b)|0;g=v9(h)|0;i=h+g|0;j=c[11106]|0;if((g|0)>0){e=0;d=0;b=h;do{g=b;a:while(1){b=a[g>>0]|0;switch(b<<24>>24){case 10:case 13:break;default:break a}g=g+1|0}if(g>>>0>>0){f=g;b:while(1){switch(b<<24>>24){case 10:case 13:break b;default:{}}b=f+1|0;if(b>>>0>=i>>>0){f=b;break}f=b;b=a[b>>0]|0}a[f>>0]=0;if(f>>>0>g>>>0&(a[g>>0]|0)==91?(k=f+-1|0,(a[k>>0]|0)==93):0){a[k>>0]=0;b=g+1|0;d=wf(b,k,93)|0;if((d|0)!=0?(l=wf(d+1|0,k,91)|0,(l|0)!=0):0){a[d>>0]=0;e=l+1|0}else{e=b;b=6537}d=Si(b)|0;if(!d){b=f;e=0;d=0}else{b=f;e=Nd[c[d+8>>2]&63](j,d,e)|0}}else{b=f;m=18}}else{a[g>>0]=0;b=g;m=18}if((m|0)==18){m=0;if((d|0)!=0&(e|0)!=0)ye[c[d+12>>2]&15](j,d,e,g)}b=b+1|0}while(b>>>0>>0)}Uf(h);return}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[11106]|0;g[e+10600>>2]=0.0;ui(d);f=e+10616|0;if((c[f>>2]|0)>0){b=0;do{i=Ti(f,b)|0;te[c[i+16>>2]&63](e,i,d);b=b+1|0}while((b|0)<(c[f>>2]|0))}ut(d);vt(a,d);wt(d);l=h;return}function ut(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function wt(a){a=a|0;Ms(a);return}function xt(a){a=a|0;return c[a+8>>2]|0}function yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a>>2]|0;e=c[b>>2]|0;b=c[f+8>>2]|0;d=c[e+8>>2]|0;a=(b&67108864)-(d&67108864)|0;if(!a){a=(b&33554432)-(d&33554432)|0;if(!a)a=(c[f+152>>2]|0)-(c[e+152>>2]|0)|0}return a|0}function zt(b,d){b=b|0;d=d|0;var e=0,f=0;lj(b,c[d+616>>2]|0);e=d+348|0;if((c[e>>2]|0)>0){d=0;do{f=c[(ni(e,d)|0)>>2]|0;if(a[f+144>>0]|0?(c[f+188>>2]|0)<1:0)zt(b,f);d=d+1|0}while((d|0)<(c[e>>2]|0))}return}function At(a){a=a|0;return (c[a>>2]|0)==0|0}function Bt(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<5)|0;else Bb(39063,39072,1128,14585);return 0}function Ct(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Dt(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Et(a,Ft(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Et(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ft(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ht(a,It(a,d+1|0)|0);d=c[a>>2]|0}f=c[a+8>>2]|0;c[a>>2]=d+1;e=b;a=c[e+4>>2]|0;b=f+(d<<3)|0;c[b>>2]=c[e>>2];c[b+4>>2]=a;return}function Ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function It(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Jt(a){a=a|0;Kt(a+84|0,0);return}function Kt(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ht(a,It(a,b)|0);c[a>>2]=b;return}function Lt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0;e=+gi(+g[b>>2],+g[c>>2],+g[d>>2]);Ze(a,e,+gi(+g[b+4>>2],+g[c+4>>2],+g[d+4>>2]));return}function Mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<2)|0)>>>0>=b>>>0):0){b=b-f>>2;if((e|0)==(c[a+4>>2]|0)){ej(a,Nt(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<2)|0;rca(f+4|0,f|0,e-b<<2|0)|0;e=c[a>>2]|0}c[(c[g>>2]|0)+(b<<2)>>2]=c[d>>2];c[a>>2]=e+1;return (c[g>>2]|0)+(b<<2)|0}Bb(12910,39072,1154,12940);return 0}function Nt(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ot(a){a=a|0;Xe(a+4|0);Xe(a+12|0);Xe(a+20|0);return}function Pt(a){a=a|0;var b=0,c=0;b=a+8|0;if(+g[a>>2]>+g[b>>2])Qf(a,b);c=a+4|0;b=a+12|0;if(+g[c>>2]>+g[b>>2])Qf(c,b);return}function Qt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+48|0;o=m+40|0;n=m+24|0;r=m+32|0;i=m+16|0;k=m;p=m+8|0;q=a+20|0;El(n,b,q,d);nf(o,q,a+28|0);El(r,o,b,d);lf(i,r,n);r=i;q=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=q;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];ol(k,a,o);b=n;a=c[b>>2]|0;b=c[b+4>>2]|0;n=e;c[n>>2]=a;c[n+4>>2]=b;h=(c[j>>2]=b,+g[j>>2]);if(+g[d>>2]==0.0)g[e>>2]=(c[j>>2]=a,+g[j>>2])-(+g[k>>2]-+g[i>>2]);if(+g[d+4>>2]==0.0)g[e+4>>2]=h-(+g[k+4>>2]-+g[i+4>>2]);p=k;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=m;return}function Rt(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=c[(c[11106]|0)+6436>>2]|0;c[a>>2]=c[b+280>>2];c[a+4>>2]=c[b+284>>2];e=b+288|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];b=b+304|0;a=a+24|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Tt(a){a=a|0;return ((a|0)>65535?0:a)|0}function Ut(a){a=a|0;return c[a+44>>2]|0}function Vt(a,c,d){a=a|0;c=c|0;d=d|0;c=lu(c+24|0,d,1,1)|0;if(c|0)b[c>>1]=ku(a,d)|0;return}function Wt(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=(c[a+12>>2]|0)+(d<<1)|0;f=d+(e<<1)|0;h=Ff(d,f)|0;g=a+40|0;c[g>>2]=(c[g>>2]|0)-h;a=a+44|0;c[a>>2]=(c[a>>2]|0)-e;a=b[f>>1]|0;if(a<<16>>16){e=d;while(1){f=f+2|0;d=e+2|0;b[e>>1]=a;a=b[f>>1]|0;if(!(a<<16>>16))break;else e=d}}b[d>>1]=0;return}function Xt(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+44|0;g=c[j>>2]|0;if((g|0)<(d|0))Bb(13430,5025,9649,13446);k=a+4|0;if((g+f|0)<(c[k>>2]|0)?(h=Ff(e,e+(f<<1)|0)|0,i=a+40|0,((c[i>>2]|0)+h|0)<(c[a+48>>2]|0)):0){a=(c[a+12>>2]|0)+(d<<1)|0;if((g|0)!=(d|0))rca(a+(f<<1)|0,a|0,g-d<<1|0)|0;qca(a|0,e|0,f<<1|0)|0;a=(c[j>>2]|0)+f|0;c[j>>2]=a;c[i>>2]=(c[i>>2]|0)+h;b[(pu(k,a)|0)>>1]=0;a=1}else a=0;return a|0}function Yt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;cu(b,d);e=d+4|0;f=c[e>>2]|0;g=d+8|0;h=c[g>>2]|0;if((f|0)!=(h|0)){if((f|0)<(h|0)){ju(b,d,f,h-f|0);b=c[e>>2]|0;c[g>>2]=b}else{ju(b,d,h,f-h|0);b=c[g>>2]|0;c[e>>2]=b}c[d>>2]=b;a[d+15>>0]=0}return}function Zt(a,b,c){a=a|0;b=b|0;c=c|0;lu(a+24|0,b,0,c)|0;return}function _t(a,d){a=a|0;d=d|0;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;i=d+24|0;q=d+3210|0;f=b[q>>1]|0;a:do if(f<<16>>16){l=(f<<16>>16)+-1|0;o=c[d+24+(l*12|0)>>2]|0;m=b[d+24+(l*12|0)+4>>1]|0;k=b[d+24+(l*12|0)+6>>1]|0;l=b[d+24+(l*12|0)+8>>1]|0;p=d+3212|0;n=(b[p>>1]|0)+-1|0;b[d+24+(n*12|0)+8>>1]=-1;f=d+24+(n*12|0)+4|0;b[f>>1]=k;b[d+24+(n*12|0)+6>>1]=m;c[d+24+(n*12|0)>>2]=o;if(k<<16>>16){h=d+3214|0;g=b[h>>1]|0;n=k<<16>>16;if(((g<<16>>16)+n|0)<=998){j=d+3216|0;f=b[j>>1]|0;if(((g<<16>>16)+n|0)>(f|0))do{qu(i);if((b[p>>1]|0)==99)break a;f=b[j>>1]|0}while(((b[h>>1]|0)+n|0)>(f|0));g=d+24+(((b[p>>1]|0)+-1|0)*12|0)+8|0;b[g>>1]=f-n;b[j>>1]=(e[j>>1]|0)-n;if(k<<16>>16>0){f=0;do{k=ku(a,f+o|0)|0;b[d+1212+(f+(b[g>>1]|0)<<1)>>1]=k;f=f+1|0}while((f|0)!=(n|0))}}else b[f>>1]=0;Wt(a,o,n)}if(!(m<<16>>16))f=0;else{f=m<<16>>16;Xt(a,o,d+1212+(l<<16>>16<<1)|0,f)|0;a=d+3214|0;b[a>>1]=(e[a>>1]|0)-f}c[d>>2]=o+f;b[q>>1]=(b[q>>1]|0)+-1<<16>>16;b[p>>1]=(b[p>>1]|0)+-1<<16>>16}while(0);return}function $t(a,d){a=a|0;d=d|0;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;r=d+3212|0;f=b[r>>1]|0;if(f<<16>>16!=99){j=f<<16>>16;q=d+3210|0;n=b[q>>1]|0;p=c[d+24+(j*12|0)>>2]|0;k=b[d+24+(j*12|0)+4>>1]|0;f=b[d+24+(j*12|0)+6>>1]|0;j=b[d+24+(j*12|0)+8>>1]|0;i=d+24+(n*12|0)+6|0;b[i>>1]=k;l=d+24+(n*12|0)+4|0;b[l>>1]=f;m=d+24+(n*12|0)|0;c[m>>2]=p;n=d+24+(n*12|0)+8|0;b[n>>1]=-1;if(f<<16>>16){g=d+3214|0;h=b[g>>1]|0;o=f<<16>>16;if((o+(h<<16>>16)|0)<=(b[d+3216>>1]|0)){b[n>>1]=h;b[g>>1]=(f&65535)+(h&65535);if(f<<16>>16>0){f=0;do{i=ku(a,(c[m>>2]|0)+f|0)|0;b[d+1212+(f+(b[n>>1]|0)<<1)>>1]=i;f=f+1|0}while((f|0)<(b[l>>1]|0))}}else{b[l>>1]=0;b[i>>1]=0}Wt(a,p,o)}if(!(k<<16>>16))f=0;else{f=k<<16>>16;Xt(a,p,d+1212+(j<<16>>16<<1)|0,f)|0;a=d+3216|0;b[a>>1]=(e[a>>1]|0)+f}c[d>>2]=p+f;b[q>>1]=(b[q>>1]|0)+1<<16>>16;b[r>>1]=(b[r>>1]|0)+1<<16>>16}return}function au(b){b=b|0;var d=0,e=0;d=b+4|0;e=b+8|0;if((c[d>>2]|0)!=(c[e>>2]|0)){ru(b);d=c[d>>2]|0;c[b>>2]=d;c[e>>2]=d;a[b+15>>0]=0}return}function bu(b,d){b=b|0;d=d|0;var e=0,f=0;e=d+4|0;f=d+8|0;if((c[e>>2]|0)!=(c[f>>2]|0)){ru(d);cu(b,d);f=c[f>>2]|0;c[d>>2]=f;c[e>>2]=f;a[d+15>>0]=0}return}function cu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=Ut(a)|0;e=b+4|0;d=c[e>>2]|0;f=b+8|0;a=c[f>>2]|0;if((d|0)!=(a|0)){if((d|0)>(g|0)){c[e>>2]=g;d=g}if((a|0)>(g|0)){c[f>>2]=g;a=g}if((d|0)==(a|0))c[b>>2]=d}if((c[b>>2]|0)>(g|0))c[b>>2]=g;return}function du(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=a+8|0;e=c[d>>2]|0;if((c[b>>2]|0)==(e|0)){e=c[a>>2]|0;c[d>>2]=e;c[b>>2]=e}else c[a>>2]=e;return}function eu(a,b){a=a|0;b=b|0;var c=0;do{c=b;b=b+-1|0;if((c|0)<=0)break}while(!(su(a,b)|0));return ((b|0)>0?b:0)|0}function fu(a,b){a=a|0;b=b|0;var d=0;d=c[a+44>>2]|0;do{b=b+1|0;if((b|0)>=(d|0))break}while(!(su(a,b)|0));return ((b|0)>(d|0)?d:b)|0}function gu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;do if((Ut(b)|0)!=(d|0)){i=a+4|0;g[i>>2]=0.0;hu(n,b,0);j=n+20|0;e=c[j>>2]|0;if((e|0)>(d|0)){f=0;h=0}else{k=n+8|0;f=0;while(1){g[i>>2]=+g[k>>2]+ +g[i>>2];hu(n,b,e);m=c[j>>2]|0;h=m+e|0;if((h|0)>(d|0)){h=e;e=m;break}else{f=e;e=h}}}c[a+12>>2]=h;c[a+16>>2]=e;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a+20>>2]=f;c[a>>2]=c[n>>2];if((h|0)<(d|0)){f=d-h|0;e=0;do{p=+iu(b,h,e);g[a>>2]=p+ +g[a>>2];e=e+1|0}while((e|0)!=(f|0))}}else{if(e|0){hu(n,b,0);g[a+4>>2]=0.0;c[a+12>>2]=0;c[a+16>>2]=d;g[a+8>>2]=+g[n+16>>2]-+g[n+12>>2];c[a>>2]=c[n+4>>2];break}g[a+4>>2]=0.0;g[a>>2]=0.0;g[a+8>>2]=1.0;if((d|0)>0){h=n+20|0;f=0;while(1){hu(n,b,f);e=(c[h>>2]|0)+f|0;if((e|0)<(d|0))f=e;else break}}else{f=0;e=0}c[a+12>>2]=e;c[a+16>>2]=0;c[a+20>>2]=f}while(0);l=o;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;h=e;i=c[b+12>>2]|0;c[f>>2]=0;d=i+(d<<1)|0;Up(h,d,i+(c[b+44>>2]<<1)|0,f,1);g[a>>2]=0.0;c[a+4>>2]=c[h>>2];b=c[h+4>>2]|0;c[a+8>>2]=b;g[a+12>>2]=0.0;c[a+16>>2]=b;c[a+20>>2]=(c[f>>2]|0)-d>>1;l=e;return}function iu(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0;a=b[(pu(a+4|0,e+d|0)|0)>>1]|0;if(a<<16>>16==10)f=-1.0;else{f=+Vp(c[(c[11106]|0)+6224>>2]|0,a);e=c[11106]|0;f=f*(+g[e+6228>>2]/+g[c[e+6224>>2]>>2])}return +f}function ju(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;uu(b,c,d,e);Wt(b,d,e);a[c+15>>0]=0;return}function ku(a,c){a=a|0;c=c|0;return b[(vu(a+4|0,c)|0)>>1]|0}function lu(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;g=mu(a,e)|0;do if(g){c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;if(!e){b[g+8>>1]=-1;a=0;break}else{d=a+3190|0;f=b[d>>1]|0;b[g+8>>1]=f;b[d>>1]=(f&65535)+e;a=a+1188+(f<<16>>16<<1)|0;break}}else a=0;while(0);return a|0}function mu(a,c){a=a|0;c=c|0;var d=0,e=0;nu(a);d=a+3186|0;if((b[d>>1]|0)==99)ou(a);if((c|0)>999){b[d>>1]=0;b[a+3190>>1]=0;a=0}else{e=a+3190|0;if(((b[e>>1]|0)+c|0)>999)do ou(a);while(((b[e>>1]|0)+c|0)>999);e=b[d>>1]|0;b[d>>1]=e+1<<16>>16;a=a+((e<<16>>16)*12|0)|0}return a|0}function nu(a){a=a|0;b[a+3188>>1]=99;b[a+3192>>1]=999;return}function ou(a){a=a|0;var c=0,d=0,f=0,g=0,h=0,i=0;i=a+3186|0;c=b[i>>1]|0;if(c<<16>>16>0){d=b[a+8>>1]|0;a:do if(d<<16>>16>-1){h=b[a+4>>1]|0;g=a+3190|0;c=(e[g>>1]|0)-h|0;b[g>>1]=c;rca(a+1188|0,a+1188+(h<<1)|0,c<<16>>15|0)|0;c=b[i>>1]|0;if(c<<16>>16>0){g=c<<16>>16;f=0;while(1){if(d<<16>>16>-1)b[a+(f*12|0)+8>>1]=(d&65535)-h;d=f+1|0;if((d|0)>=(g|0))break a;f=d;d=b[a+(d*12|0)+8>>1]|0}}}while(0);h=c+-1<<16>>16;b[i>>1]=h;rca(a|0,a+12|0,(h<<16>>16)*12|0)|0}return}function pu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1118,14323);return 0}function qu(a){a=a|0;var c=0,d=0,f=0,g=0,h=0;h=a+3188|0;c=b[h>>1]|0;if(c<<16>>16<99){if((b[a+1184>>1]|0)>-1){g=b[a+1180>>1]|0;f=a+3192|0;c=(e[f>>1]|0)+g|0;b[f>>1]=c;c=c<<16>>16;f=a+1188+(c<<1)|0;rca(f|0,f+(0-g<<1)|0,999-c<<1|0)|0;c=b[h>>1]|0;if(c<<16>>16<98){c=c<<16>>16;while(1){d=a+(c*12|0)+8|0;f=b[d>>1]|0;if(f<<16>>16>-1)b[d>>1]=(f&65535)+g;if((c|0)<97)c=c+1|0;else break}c=b[h>>1]|0}}g=c<<16>>16;a=a+(g*12|0)|0;rca(a|0,a+-12|0,(99-g|0)*12|0)|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}return}function ru(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;e=c[d>>2]|0;a=a+4|0;b=c[a>>2]|0;if((e|0)<(b|0)){c[d>>2]=b;c[a>>2]=e}return}function su(a,b){a=a|0;b=b|0;if((b|0)>0){a=a+4|0;if(tu(e[(pu(a,b+-1|0)|0)>>1]|0)|0)a=((tu(e[(pu(a,b)|0)>>1]|0)|0)^1)&1;else a=0}else a=1;return a|0}function tu(a){a=a|0;a:do if(Yq(a)|0)a=1;else{switch(a|0){case 124:case 40:case 41:case 44:case 59:case 91:case 93:case 123:case 125:{a=1;break a}default:{}}a=0}while(0);return a|0}function uu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=lu(c+24|0,d,e,0)|0;if((f|0)!=0&(e|0)>0){c=0;do{b[f+(c<<1)>>1]=ku(a,c+d|0)|0;c=c+1|0}while((c|0)!=(e|0))}return}function vu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<1)|0;else Bb(14314,39072,1119,14323);return 0}function wu(d,e){d=d|0;e=e|0;b[d+3210>>1]=0;b[d+3214>>1]=0;b[d+3212>>1]=99;b[d+3216>>1]=999;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=0;a[d+15>>0]=0;g[d+20>>2]=0.0;a[d+13>>0]=0;a[d+14>>0]=1;a[d+16>>0]=e;a[d+12>>0]=0;return}function xu(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r;k=Ut(a)|0;p=j+4|0;g[p>>2]=0.0;g[j>>2]=0.0;m=j+16|0;g[m>>2]=0.0;n=j+12|0;g[n>>2]=0.0;o=j+20|0;c[o>>2]=0;a:do if((k|0)>0){f=j+8|0;e=0;h=0.0;while(1){hu(j,a,e);q=c[o>>2]|0;if((q|0)<1){e=k;break a}if((e|0)==0?h+ +g[n>>2]>d:0){e=0;break a}if(h+ +g[m>>2]>d)break;e=q+e|0;if((e|0)<(k|0))h=h+ +g[f>>2];else{e=k;break a}}h=+g[j>>2];if(!(h>b)){b:do if(+g[p>>2]>b){f=0;while(1){d=+iu(a,e,f);i=h+d;if(i>b)break;f=f+1|0;if((f|0)<(q|0))h=i;else break b}e=f+e|0;if(h+d*.5>b)break a;e=e+1|0;break a}while(0);e=q+e+(((ku(a,e+-1+q|0)|0)<<16>>16==10)<<31>>31)|0}}else e=k;while(0);l=r;return e|0}function yu(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1119,14323);return 0}function zu(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function Au(a,d){a=a|0;d=d|0;var e=0;a=a+56|0;e=c[a>>2]|0;b[e>>1]=d;c[a>>2]=e+2;return}function Bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+52|0;h=b;b=c[h+4>>2]|0;g=c[f>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=b;g=d;b=c[g+4>>2]|0;d=(c[f>>2]|0)+8|0;c[d>>2]=c[g>>2];c[d+4>>2]=b;d=c[f>>2]|0;c[d+16>>2]=e;c[f>>2]=d+20;e=a+48|0;c[e>>2]=(c[e>>2]|0)+1;return}function Cu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0;i=l;l=l+16|0;f=i+8|0;h=i;switch(d|0){case 0:{k=+g[c>>2];d=b+4|0;j=+g[c+4>>2];Ze(f,+g[b>>2]+k,+g[d>>2]-j);Ze(h,+g[b>>2]+k,+g[d>>2]+j);Mw(a,f,h,b,e);break}case 1:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]-k);Mw(a,f,h,b,e);break}case 2:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]+j,+g[d>>2]+k);Ze(h,+g[b>>2]-j,+g[d>>2]+k);Mw(a,f,h,b,e);break}case 3:{j=+g[c>>2];d=b+4|0;k=+g[c+4>>2];Ze(f,+g[b>>2]-j,+g[d>>2]-k);Ze(h,+g[b>>2]+j,+g[d>>2]-k);Mw(a,f,h,b,e);break}default:{}}l=i;return}function Du(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gu(a,Hu(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*56|0)|0;d=b;a=e+56|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Eu(a){a=a|0;Iu(a+44|0);Ju(a);return}function Fu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*56|0)|0;else Bb(39063,39072,1128,14585);return 0}function Gu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*56|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*56|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iu(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Ju(a){a=a|0;var d=0;c[a+12>>2]=0;c[a>>2]=0;c[a+4>>2]=0;b[a+8>>1]=0;c[a+16>>2]=1;d=a+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;Ku(a+44|0);return}function Ku(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Lu(a){a=a|0;return (c[a>>2]|0)==0|0}function Mu(b,e){b=b|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;v=l;l=l+208|0;u=v+200|0;t=v+192|0;s=v+160|0;r=v+152|0;p=v+136|0;o=v+128|0;n=v+96|0;m=v+64|0;q=v+16|0;k=v;f=c[b>>2]|0;i=b+144|0;if(!(a[i>>0]|0))j=d[b+145>>0]|0;else j=1;c[k>>2]=e;c[k+4>>2]=f;c[k+8>>2]=j;c[k+12>>2]=b;if(vo(b,13641,k)|0){e=c[b+8>>2]|0;Sr(b,c[b+616>>2]|0);A=+g[b+24>>2];w=+g[b+28>>2];x=+g[b+32>>2];y=+g[b+52>>2];z=+g[b+56>>2];h[q>>3]=+g[b+20>>2];h[q+8>>3]=A;h[q+16>>3]=w;h[q+24>>3]=x;h[q+32>>3]=y;h[q+40>>3]=z;Go(13660,q);c[m>>2]=e;c[m+4>>2]=e&16777216|0?13753:46144;c[m+8>>2]=e&33554432|0?13760:46144;c[m+12>>2]=e&67108864|0?13769:46144;c[m+16>>2]=e&134217728|0?13776:46144;c[m+20>>2]=e&268435456|0?13783:46144;c[m+24>>2]=e&256|0?13794:46144;Go(13722,m);z=+g[b+108>>2];y=+wn(b);x=+g[b+112>>2];w=+xn(b);h[n>>3]=z;h[n+8>>3]=y;h[n+16>>3]=x;h[n+24>>3]=w;Go(13811,n);q=d[b+146>>0]|0;c[o>>2]=d[i>>0];c[o+4>>2]=q;Go(13841,o);q=c[b+648>>2]|0;e=c[b+332>>2]|0;c[p>>2]=c[b+644>>2];c[p+4>>2]=q;c[p+8>>2]=e;Go(13871,p);e=c[b+640>>2]|0;if(!e)e=11431;else e=c[e>>2]|0;c[r>>2]=e;Go(13921,r);e=b+652|0;if(bt(e)|0){y=+g[b+656>>2];z=+g[b+660>>2];A=+g[b+664>>2];h[s>>3]=+g[e>>2];h[s+8>>3]=y;h[s+16>>3]=z;h[s+24>>3]=A;Go(13947,s)}else Go(13985,t);e=c[b+624>>2]|0;if((e|0)!=(b|0))Mu(e,14007);e=b+348|0;if((c[e>>2]|0)>0)Rr(e,14018);c[u>>2]=c[b+588>>2]<<3;Go(14031,u);Jr()}l=v;return}function Nu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ye(a);g[a>>2]=+(b|0)*.003921568859368563;g[a+4>>2]=+(c|0)*.003921568859368563;g[a+8>>2]=+(d|0)*.003921568859368563;g[a+12>>2]=+(e|0)*.003921568859368563;return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function Pu(a){a=a|0;return c[a+8>>2]|0}function Qu(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function Ru(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;e=b+4|0;c=+g[e>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[e>>2];if(+g[d>>2]>2]=c;return}function Su(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*20|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tu(a){a=a|0;var b=0;g[a>>2]=+(~~+g[a>>2]|0);b=a+4|0;g[b>>2]=+(~~+g[b>>2]|0);b=a+8|0;g[b>>2]=+(~~+g[b>>2]|0);a=a+12|0;g[a>>2]=+(~~+g[a>>2]|0);return}function Uu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function Vu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<3)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<3|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Yu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Zu(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function _u(a){a=a|0;Ks(a+10616|0);Ls(a+10604|0);Ms(a+10572|0);px(a+10428|0);Ns(a+7144|0);Os(a+7124|0);Ps(a+6920|0);Qs(a+6892|0);Rs(a+6552|0);Rs(a+6540|0);Ss(a+6528|0);Ts(a+6516|0);Us(a+6504|0);Jg(a+6420|0);$r(a+6408|0);$r(a+6396|0);$r(a+6384|0);return}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*36|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*36|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function av(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function bv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){dv(a,ev(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*24|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];return}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e*24|0)|0)>>>0>=b>>>0):0){b=(b-f|0)/24|0;if((e|0)==(c[a+4>>2]|0)){dv(a,ev(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b*24|0)|0;rca(f+24|0,f|0,(e-b|0)*24|0)|0}f=(c[g>>2]|0)+(b*24|0)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b*24|0)|0}Bb(12910,39072,1154,12940);return 0}function dv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ev(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function gv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function iv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function kv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function ov(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*12|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*12|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function qv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<1)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<1|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function sv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function tv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function uv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,1.0,1.0,1.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.05999999865889549,.05999999865889549,.9399999976158142);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.07999999821186066,.07999999821186066,.07999999821186066,.9399999976158142);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);e=a+248|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,.5400000214576721);e=a+264|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+280|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+296|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.03999999910593033,.03999999910593033,.03999999910593033,1.0);e=a+312|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.1599999964237213,.28999999165534973,.47999998927116394,1.0);e=a+328|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.5099999904632568);e=a+344|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.14000000059604645,.14000000059604645,1.0);e=a+360|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.019999999552965164,.019999999552965164,.019999999552965164,.5299999713897705);e=a+376|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.3100000023841858,.3100000023841858,.3100000023841858,1.0);e=a+392|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,1.0);e=a+408|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5099999904632568,.5099999904632568,.5099999904632568,1.0);e=a+424|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+440|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.23999999463558197,.5199999809265137,.8799999952316284,1.0);e=a+456|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+472|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);e=a+488|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+504|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);e=a+520|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);e=a+536|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);e=a+552|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+584|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.10000000149011612,.4000000059604645,.75,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.10000000149011612,.4000000059604645,.75,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.25);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.4099999964237213,.4099999964237213,.4099999964237213,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6100000143051147,.6100000143051147,.6100000143051147,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+840|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function vv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,.8999999761581421,.8999999761581421,.8999999761581421,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.699999988079071);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.10999999940395355,.10999999940395355,.14000000059604645,.9200000166893005);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5,.5,.5,.5);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4300000071525574,.4300000071525574,.4300000071525574,.38999998569488525);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4699999988079071,.4699999988079071,.6899999976158142,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.41999998688697815,.4099999964237213,.6399999856948853,.6899999976158142);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.27000001072883606,.27000001072883606,.5400000214576721,.8299999833106995);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3199999928474426,.3199999928474426,.6299999952316284,.8700000047683716);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.20000000298023224);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.550000011920929,.800000011920929);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.20000000298023224,.25,.30000001192092896,.6000000238418579);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.30000001192092896);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.800000011920929,.4000000059604645);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8999999761581421,.8999999761581421,.8999999761581421,.5);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.30000001192092896);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4099999964237213,.38999998569488525,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.3499999940395355,.4000000059604645,.6100000143051147,.6200000047683716);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.47999998927116394,.7099999785423279,.7900000214576721);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.4000000059604645,.4000000059604645,.8999999761581421,.44999998807907104);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.44999998807907104,.44999998807907104,.8999999761581421,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.5299999713897705,.5299999713897705,.8700000047683716,.800000011920929);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.5,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.699999988079071,1.0);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.1599999964237213);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.6000000238418579);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.7799999713897705,.8199999928474426,1.0,.8999999761581421);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5,.5,.8999999761581421,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.8999999761581421,.6000000238418579);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.6000000238418579,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,0.0,0.0,1.0,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,1.0,0.0,.8999999761581421);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,1.0,1.0,1.0,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function wv(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(!a)a=Dh()|0;f=a+152|0;If(b,0.0,0.0,0.0,1.0);c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6000000238418579,.6000000238418579,.6000000238418579,1.0);f=a+168|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9399999976158142,.9399999976158142,.9399999976158142,1.0);f=a+184|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+200|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.9800000190734863);f=a+216|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,.30000001192092896);f=a+232|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,0.0,0.0,0.0,0.0);f=a+248|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,1.0);f=a+264|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+280|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);f=a+296|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9599999785423279,.9599999785423279,.9599999785423279,1.0);f=a+312|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8199999928474426,.8199999928474426,.8199999928474426,1.0);f=a+328|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,1.0,1.0,1.0,.5099999904632568);f=a+344|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.8600000143051147,.8600000143051147,.8600000143051147,1.0);f=a+360|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.9800000190734863,.9800000190734863,.9800000190734863,.5299999713897705);f=a+376|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.6899999976158142,.6899999976158142,.6899999976158142,.800000011920929);f=a+392|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,.800000011920929);f=a+408|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.49000000953674316,.49000000953674316,.49000000953674316,1.0);f=a+424|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+440|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.7799999713897705);f=a+456|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.46000000834465027,.5400000214576721,.800000011920929,.6000000238418579);f=a+472|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.4000000059604645);f=a+488|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);f=a+504|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.05999999865889549,.5299999713897705,.9800000190734863,1.0);f=a+520|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3100000023841858);f=a+536|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.800000011920929);f=a+552|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,1.0);e=a+568|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+584|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,.7799999713897705);e=a+600|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.14000000059604645,.4399999976158142,.800000011920929,1.0);e=a+616|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.800000011920929,.800000011920929,.800000011920929,.5600000023841858);e=a+632|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.6700000166893005);e=a+648|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+664|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.5899999737739563,.5899999737739563,.5899999737739563,.5);e=a+680|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+696|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.9800000190734863,.38999998569488525,.36000001430511475,1.0);e=a+712|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.38999998569488525,.38999998569488525,.38999998569488525,1.0);e=a+728|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.4300000071525574,.3499999940395355,1.0);e=a+744|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.8999999761581421,.699999988079071,0.0,1.0);e=a+760|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,1.0,.44999998807907104,0.0,1.0);e=a+776|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.3499999940395355);e=a+792|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.20000000298023224,.20000000298023224,.20000000298023224,.3499999940395355);e=a+808|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];If(b,.25999999046325684,.5899999737739563,.9800000190734863,.949999988079071);e=a+824|0;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=a+840|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];If(b,.699999988079071,.699999988079071,.699999988079071,.699999988079071);a=a+856|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function xv(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0;h=l;l=l+16|0;f=h;Xe(a);b=a+20|0;Ye(b);d=a+132|0;e=a+36|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));c[a+8>>2]=0;g[a+12>>2]=0.0;g[a+16>>2]=0.0;If(f,-8192.0,-8192.0,8192.0,8192.0);c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=0;do{j=+(b|0)*2.0*3.1415927410125732/12.0;Ze(f,+E(+j),+F(+j));i=f;d=c[i+4>>2]|0;e=a+36+(b<<3)|0;c[e>>2]=c[i>>2];c[e+4>>2]=d;b=b+1|0}while((b|0)!=12);l=h;return}function yv(a){a=a|0;zv(a,0);Jp(a+12|0,0);Av(a+24|0,0);c[a+36>>2]=3;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Bv(a+60|0,0);Cv(a+72|0,0);Kt(a+84|0,0);c[a+96>>2]=0;c[a+100>>2]=1;return}function zv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Kv(a,Jv(a,b)|0);c[a>>2]=b;return}function Av(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Iv(a,Hv(a,b)|0);c[a>>2]=b;return}function Bv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Gv(a,Fv(a,b)|0);c[a>>2]=b;return}function Cv(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Ev(a,Dv(a,b)|0);c[a>>2]=b;return}function Dv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Ev(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Fv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Hv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Iv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*20|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*20|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Jv(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<5)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<5|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lv(a){a=a|0;var b=0,d=0;Mv(a);Ni(a+12|0);Nv(a+24|0);c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;Ov(a+60|0);Pv(a+72|0);Qv(a+84|0);c[a+96>>2]=0;c[a+100>>2]=1;b=a+104|0;if((c[b>>2]|0)>0){a=0;do{if(!a){d=Sv(b,0)|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0}Mv(Sv(b,a)|0);Ni((Sv(b,a)|0)+12|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Rv(b);return}function Mv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Nv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ov(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Rv(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Sv(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Tv(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+32|0;e=f;Uv(e);b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;d=e+4|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;c[e+20>>2]=b;if(+g[d>>2]<=+g[e+12>>2]?+g[e+8>>2]<=+g[e+16>>2]:0){Vv(a,e);l=f;return}Bb(14334,14423,361,14444)}function Uv(a){a=a|0;Ye(a+4|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return}function Vv(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kv(a,Jv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<5)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function Wv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[a>>2]|0;do if((b|0)>0?(g=b+-1|0,h=c[a+8>>2]|0,e=h+(g<<5)|0,(e|0)!=0):0){d=(c[e>>2]|0)==0;if(!d?r9(h+(g<<5)+4|0,f,16)|0:0){i=9;break}if(!(c[h+(g<<5)+24>>2]|0)){b=(b|0)>1;e=b?e+-32|0:0;if(b&d?(r9(e+4|0,f,16)|0)==0:0){b=c[a+72>>2]|0;if(!b)b=0;else b=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;if((c[e+20>>2]|0)==(b|0)?(c[e+24>>2]|0)==0:0){Ct(a);break}}h=h+(g<<5)+4|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2]}else i=9}else i=9;while(0);if((i|0)==9)Tv(a);l=j;return}function Xv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a+72>>2]|0;if(!b)e=0;else e=c[(c[a+80>>2]|0)+(b+-1<<2)>>2]|0;do if(c[a>>2]|0){d=Bt(a)|0;b=(c[d>>2]|0)==0;if(!b?(c[d+20>>2]|0)!=(e|0):0){g=7;break}if(!(c[d+24>>2]|0)){h=(c[a>>2]|0)>1;f=h?d+-32|0:0;if(h&b?(c[f+20>>2]|0)==(e|0):0){b=c[a+60>>2]|0;if(!b)b=(c[a+40>>2]|0)+20|0;else b=(c[a+68>>2]|0)+(b+-1<<4)|0;if((r9(f+4|0,b,16)|0)==0?(c[f+24>>2]|0)==0:0){Ct(a);break}}c[d+20>>2]=e}else g=7}else g=7;while(0);if((g|0)==7)Tv(a);return}function Yv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0,n=0;n=l;l=l+16|0;m=n;If(m,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2]);if(e?(h=c[a+60>>2]|0,h|0):0){d=c[a+68>>2]|0;e=h+-1|0;f=+g[d+(e<<4)>>2];i=+g[d+(e<<4)+4>>2];j=+g[d+(e<<4)+8>>2];k=+g[d+(e<<4)+12>>2];if(+g[m>>2]>2]=f;b=m+4|0;if(+g[b>>2]>2]=i;b=m+8|0;if(+g[b>>2]>j)g[b>>2]=j;b=m+12|0;if(+g[b>>2]>k)g[b>>2]=k}e=m+8|0;g[e>>2]=+Zv(+g[m>>2],+g[e>>2]);e=m+12|0;g[e>>2]=+Zv(+g[m+4>>2],+g[e>>2]);_v(a+60|0,m);Wv(a);l=n;return}function Zv(a,b){a=+a;b=+b;return +(a>=b?a:b)}function _v(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Gv(a,Fv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d<<4)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function $v(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;h=b+8|0;f=b;i=a+40|0;j=c[i>>2]|0;Ze(h,+g[j+20>>2],+g[j+24>>2]);i=c[i>>2]|0;Ze(f,+g[i+28>>2],+g[i+32>>2]);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];Yv(a,e,d,0);l=b;return}function aw(a){a=a|0;var b=0;b=a+60|0;if((c[b>>2]|0)>0){bw(b);Wv(a);return}else Bb(14455,14423,448,34978)}function bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function cw(a,b){a=a|0;b=b|0;dw(a+72|0,b);Xv(a);return}function dw(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Ev(a,Dv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function ew(a){a=a|0;var b=0;b=a+72|0;if((c[b>>2]|0)>0){fw(b);Xv(a);return}else Bb(14488,14423,461,14513)}function fw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;j=o;m=o+32|0;if((c[b+96>>2]|0)==0?(e=b+100|0,(c[e>>2]|0)==1):0){n=b+104|0;k=c[n>>2]|0;if((k|0)<(d|0))hw(n,d);c[e>>2]=d;i=Sv(n,0)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;if((d|0)>1){h=b+60|0;i=j+4|0;b=b+72|0;f=j+20|0;e=1;do{g=Sv(n,e)|0;if((e|0)<(k|0)){zv(g,0);Jp((Sv(n,e)|0)+12|0,0)}else{a[j>>0]=a[m>>0]|0;g=Fg(24,j,g)|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;iw(g)}if(!(c[(Sv(n,e)|0)>>2]|0)){Uv(j);g=_i(h)|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[f>>2]=c[(jw(b)|0)>>2];Vv(Sv(n,e)|0,j)}e=e+1|0}while((e|0)<(d|0))}l=o;return}Bb(14526,14423,468,14571)}function hw(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))lw(a,kw(a,b)|0);c[a>>2]=b;return}function iw(a){a=a|0;bs(a);cs(a+12|0);return}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function kw(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function lw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*24|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*24|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+100|0;if((c[j>>2]|0)>=2){nw(a,0);if(c[a>>2]|0?(c[(Bt(a)|0)>>2]|0)==0:0)Ct(a);if((c[j>>2]|0)>1){g=a+104|0;b=0;f=1;d=0;do{e=Sv(g,f)|0;if(c[e>>2]|0?(c[(Bt(e)|0)>>2]|0)==0:0)Ct(e);d=(c[e>>2]|0)+d|0;b=(c[e+12>>2]|0)+b|0;f=f+1|0}while((f|0)<(c[j>>2]|0))}else{d=0;b=0}zv(a,(c[a>>2]|0)+d|0);h=a+12|0;Jp(h,(c[h>>2]|0)+b|0);e=c[a+8>>2]|0;f=c[a>>2]|0;i=a+56|0;c[i>>2]=(c[a+20>>2]|0)+(c[h>>2]<<1)+(0-b<<1);if((c[j>>2]|0)>1){h=a+104|0;g=1;b=e+(f<<5)+(0-d<<5)|0;do{e=Sv(h,g)|0;d=c[e>>2]|0;if(d){qca(b|0,c[e+8>>2]|0,d<<5|0)|0;b=b+(d<<5)|0}d=c[e+12>>2]|0;if(d|0){qca(c[i>>2]|0,c[e+20>>2]|0,d<<1|0)|0;c[i>>2]=(c[i>>2]|0)+(d<<1)}g=g+1|0}while((g|0)<(c[j>>2]|0))}Wv(a);c[j>>2]=1}return}function nw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((c[a+100>>2]|0)<=(b|0))Bb(14590,14423,535,14611);d=a+96|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=a+112|0;g=(c[f>>2]|0)+(e*24|0)|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];g=(c[f>>2]|0)+((c[d>>2]|0)*24|0)+12|0;e=a+12|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[d>>2]=b;d=c[f>>2]|0;f=d+(b*24|0)|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];d=d+(b*24|0)+12|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[a+56>>2]=(c[a+20>>2]|0)+(c[e>>2]<<1)}return}function ow(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=(c[a+8>>2]|0)+((c[a>>2]|0)+-1<<5)|0;c[f>>2]=(c[f>>2]|0)+b;f=a+24|0;e=c[f>>2]|0;Av(f,e+d|0);c[a+52>>2]=(c[a+32>>2]|0)+(e*20|0);e=a+12|0;d=c[e>>2]|0;Jp(e,d+b|0);c[a+56>>2]=(c[a+20>>2]|0)+(d<<1);return}function pw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;o=h+8|0;n=h;Ze(o,+g[e>>2],+g[d+4>>2]);Ze(n,+g[d>>2],+g[e+4>>2]);k=c[a+40>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;j=a+48|0;p=c[j>>2]|0;s=p&65535;i=a+56|0;q=c[i>>2]|0;b[q>>1]=s;b[q+2>>1]=p+1;r=p+2&65535;b[q+4>>1]=r;b[q+6>>1]=s;b[q+8>>1]=r;b[q+10>>1]=p+3;a=a+52|0;q=d;d=c[q+4>>2]|0;p=c[a>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=d;p=(c[a>>2]|0)+8|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+16>>2]=f;d=o;o=c[d+4>>2]|0;p=p+20|0;c[p>>2]=c[d>>2];c[p+4>>2]=o;p=(c[a>>2]|0)+28|0;c[p>>2]=m;c[p+4>>2]=k;p=c[a>>2]|0;c[p+36>>2]=f;o=e;d=c[o+4>>2]|0;e=p+40|0;c[e>>2]=c[o>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+48|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+56>>2]=f;d=c[n+4>>2]|0;e=e+60|0;c[e>>2]=c[n>>2];c[e+4>>2]=d;e=(c[a>>2]|0)+68|0;c[e>>2]=m;c[e+4>>2]=k;e=c[a>>2]|0;c[e+76>>2]=f;c[a>>2]=e+80;c[j>>2]=(c[j>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+12;l=h;return}function qw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=l;l=l+32|0;q=j+24|0;o=j+16|0;p=j+8|0;n=j;Ze(q,+g[e>>2],+g[d+4>>2]);Ze(o,+g[d>>2],+g[e+4>>2]);Ze(p,+g[h>>2],+g[f+4>>2]);Ze(n,+g[f>>2],+g[h+4>>2]);m=a+48|0;r=c[m>>2]|0;u=r&65535;k=a+56|0;s=c[k>>2]|0;b[s>>1]=u;b[s+2>>1]=r+1;t=r+2&65535;b[s+4>>1]=t;b[s+6>>1]=u;b[s+8>>1]=t;b[s+10>>1]=r+3;a=a+52|0;s=d;d=c[s+4>>2]|0;r=c[a>>2]|0;c[r>>2]=c[s>>2];c[r+4>>2]=d;r=f;f=c[r+4>>2]|0;d=(c[a>>2]|0)+8|0;c[d>>2]=c[r>>2];c[d+4>>2]=f;d=c[a>>2]|0;c[d+16>>2]=i;f=c[q+4>>2]|0;d=d+20|0;c[d>>2]=c[q>>2];c[d+4>>2]=f;d=c[p+4>>2]|0;f=(c[a>>2]|0)+28|0;c[f>>2]=c[p>>2];c[f+4>>2]=d;f=c[a>>2]|0;c[f+36>>2]=i;d=e;e=c[d+4>>2]|0;f=f+40|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;f=h;h=c[f+4>>2]|0;e=(c[a>>2]|0)+48|0;c[e>>2]=c[f>>2];c[e+4>>2]=h;e=c[a>>2]|0;c[e+56>>2]=i;h=o;f=c[h+4>>2]|0;e=e+60|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;e=n;f=c[e+4>>2]|0;h=(c[a>>2]|0)+68|0;c[h>>2]=c[e>>2];c[h+4>>2]=f;h=c[a>>2]|0;c[h+76>>2]=i;c[a>>2]=h+80;c[m>>2]=(c[m>>2]|0)+4;c[k>>2]=(c[k>>2]|0)+12;l=j;return}function rw(a,d,e,f,h,i){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.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.0,G=0,H=0,I=0;E=l;l=l+32|0;A=E+16|0;w=E+8|0;t=E+24|0;u=E;a:do if((e|0)>=2){D=c[a+40>>2]|0;C=c[D>>2]|0;D=c[D+4>>2]|0;n=e+-1|0;x=h?e:n;k=i>1.0;if(!(c[a+36>>2]&1)){ow(a,x*6|0,x<<2);i=i*.5;m=A+4|0;n=a+52|0;h=a+48|0;k=a+56|0;j=0;while(1){a=j;j=j+1|0;y=(j|0)==(e|0)?0:j;z=d+(a<<3)|0;w=d+(y<<3)|0;sw(A,w,z);uw(A,+tw(A));s=i*+g[A>>2];r=i*+g[m>>2];B=c[n>>2]|0;g[B>>2]=+g[z>>2]+r;a=d+(a<<3)+4|0;g[B+4>>2]=+g[a>>2]-s;B=B+8|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+16>>2]=f;g[B+20>>2]=r+ +g[w>>2];y=d+(y<<3)+4|0;g[B+24>>2]=+g[y>>2]-s;B=B+28|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+36>>2]=f;g[B+40>>2]=+g[w>>2]-r;g[B+44>>2]=s+ +g[y>>2];B=B+48|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+56>>2]=f;g[B+60>>2]=+g[z>>2]-r;g[B+64>>2]=s+ +g[a>>2];B=B+68|0;c[B>>2]=C;c[B+4>>2]=D;B=c[n>>2]|0;c[B+76>>2]=f;c[n>>2]=B+80;B=c[h>>2]|0;a=B&65535;z=c[k>>2]|0;b[z>>1]=a;b[z+2>>1]=B+1;y=B+2&65535;b[z+4>>1]=y;b[z+6>>1]=a;b[z+8>>1]=y;b[z+10>>1]=B+3;c[k>>2]=z+12;c[h>>2]=B+4;if((j|0)==(x|0))break a}}y=f&16777215;z=O(k?18:12,x)|0;B=O(k?4:3,e)|0;ow(a,z,B);z=O(e<<3,k?5:3)|0;v=l;l=l+((1*z|0)+15&-16)|0;z=v+(e<<3)|0;m=A+4|0;j=0;do{q=j;j=j+1|0;sw(A,d+(((j|0)==(e|0)?0:j)<<3)|0,d+(q<<3)|0);uw(A,+tw(A));c[v+(q<<3)>>2]=c[m>>2];g[v+(q<<3)+4>>2]=-+g[A>>2]}while((j|0)!=(x|0));if(!h){o=v+(e+-2<<3)|0;p=c[o+4>>2]|0;q=v+(n<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}if(k){s=(i+-1.0)*.5;if(!h){r=s+1.0;vw(w,v,r);ww(A,d,w);o=A;p=c[o+4>>2]|0;q=z;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,s);ww(A,d,w);q=A;p=c[q+4>>2]|0;o=z+8|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;vw(w,v,s);sw(A,d,w);o=A;p=c[o+4>>2]|0;q=z+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=p;vw(w,v,r);sw(A,d,w);q=A;p=c[q+4>>2]|0;o=z+24|0;c[o>>2]=c[q>>2];c[o+4>>2]=p;o=d+(n<<3)|0;p=v+(n<<3)|0;vw(w,p,r);ww(A,o,w);q=n<<2;m=A;n=c[m+4>>2]|0;h=z+(q<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,s);ww(A,o,w);h=A;n=c[h+4>>2]|0;m=z+((q|1)<<3)|0;c[m>>2]=c[h>>2];c[m+4>>2]=n;vw(w,p,s);sw(A,o,w);m=A;n=c[m+4>>2]|0;h=z+((q|2)<<3)|0;c[h>>2]=c[m>>2];c[h+4>>2]=n;vw(w,p,r);sw(A,o,w);o=A;p=c[o+4>>2]|0;q=z+((q|3)<<3)|0;c[q>>2]=c[o>>2];c[q+4>>2]=p}j=a+48|0;h=A+4|0;r=s+1.0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;q=(n|0)==(e|0);p=q?0:n;if(q)q=c[j>>2]|0;else q=m+4|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);vw(w,A,r);vw(t,A,s);I=d+(p<<3)|0;ww(u,I,w);H=p<<2;k=u;G=c[k+4>>2]|0;p=z+(H<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;ww(u,I,t);p=u;G=c[p+4>>2]|0;k=z+((H|1)<<3)|0;c[k>>2]=c[p>>2];c[k+4>>2]=G;sw(u,I,t);k=u;G=c[k+4>>2]|0;p=z+((H|2)<<3)|0;c[p>>2]=c[k>>2];c[p+4>>2]=G;sw(u,I,w);I=u;p=c[I+4>>2]|0;H=z+((H|3)<<3)|0;c[H>>2]=c[I>>2];c[H+4>>2]=p;H=q+1&65535;p=c[o>>2]|0;b[p>>1]=H;I=m+1&65535;b[p+2>>1]=I;G=m+2&65535;b[p+4>>1]=G;b[p+6>>1]=G;k=q+2&65535;b[p+8>>1]=k;b[p+10>>1]=H;b[p+12>>1]=H;b[p+14>>1]=I;I=m&65535;b[p+16>>1]=I;b[p+18>>1]=I;b[p+20>>1]=q;b[p+22>>1]=H;b[p+24>>1]=k;b[p+26>>1]=G;m=m+3&65535;b[p+28>>1]=m;b[p+30>>1]=m;b[p+32>>1]=q+3;b[p+34>>1]=k;c[o>>2]=p+36;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{G=k<<2;d=z+(G<<3)|0;H=c[d+4>>2]|0;I=n;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=y;H=z+((G|1)<<3)|0;d=c[H+4>>2]|0;I=I+20|0;c[I>>2]=c[H>>2];c[I+4>>2]=d;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=f;d=z+((G|2)<<3)|0;H=c[d+4>>2]|0;I=I+40|0;c[I>>2]=c[d>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=f;G=z+((G|3)<<3)|0;H=c[G+4>>2]|0;I=I+60|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+68|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+76>>2]=y;n=I+80|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}else{if(!h){vw(w,v,1.0);ww(A,d,w);G=A;H=c[G+4>>2]|0;I=z;c[I>>2]=c[G>>2];c[I+4>>2]=H;vw(w,v,1.0);sw(A,d,w);I=A;H=c[I+4>>2]|0;G=z+8|0;c[G>>2]=c[I>>2];c[G+4>>2]=H;G=d+(n<<3)|0;H=v+(n<<3)|0;vw(w,H,1.0);ww(A,G,w);I=n<<1;q=A;t=c[q+4>>2]|0;u=z+(I<<3)|0;c[u>>2]=c[q>>2];c[u+4>>2]=t;vw(w,H,1.0);sw(A,G,w);G=A;H=c[G+4>>2]|0;I=z+((I|1)<<3)|0;c[I>>2]=c[G>>2];c[I+4>>2]=H}j=a+48|0;h=A+4|0;o=a+56|0;m=c[j>>2]|0;n=0;while(1){k=n;n=n+1|0;I=(n|0)==(e|0);p=I?0:n;if(I)q=c[j>>2]|0;else q=m+3|0;ww(w,v+(k<<3)|0,v+(p<<3)|0);vw(A,w,.5);i=+g[A>>2];F=+g[h>>2];F=i*i+F*F;i=1.0/F;if(F>9.999999974752427e-07)uw(A,i>100.0?100.0:i);uw(A,1.0);u=d+(p<<3)|0;ww(w,u,A);G=p<<1;t=w;H=c[t+4>>2]|0;I=z+(G<<3)|0;c[I>>2]=c[t>>2];c[I+4>>2]=H;sw(w,u,A);u=w;I=c[u+4>>2]|0;G=z+((G|1)<<3)|0;c[G>>2]=c[u>>2];c[G+4>>2]=I;G=q&65535;I=c[o>>2]|0;b[I>>1]=G;u=m&65535;b[I+2>>1]=u;H=m+2&65535;b[I+4>>1]=H;b[I+6>>1]=H;b[I+8>>1]=q+2;b[I+10>>1]=G;H=q+1&65535;b[I+12>>1]=H;b[I+14>>1]=m+1;b[I+16>>1]=u;b[I+18>>1]=u;b[I+20>>1]=G;b[I+22>>1]=H;c[o>>2]=I+24;if((n|0)==(x|0))break;else m=q}if((e|0)>0){m=a+52|0;k=0;n=c[m>>2]|0;do{A=d+(k<<3)|0;G=c[A+4>>2]|0;I=n;c[I>>2]=c[A>>2];c[I+4>>2]=G;I=(c[m>>2]|0)+8|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+16>>2]=f;G=k<<1;A=z+(G<<3)|0;H=c[A+4>>2]|0;I=I+20|0;c[I>>2]=c[A>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+28|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+36>>2]=y;G=z+((G|1)<<3)|0;H=c[G+4>>2]|0;I=I+40|0;c[I>>2]=c[G>>2];c[I+4>>2]=H;I=(c[m>>2]|0)+48|0;c[I>>2]=C;c[I+4>>2]=D;I=c[m>>2]|0;c[I+56>>2]=y;n=I+60|0;c[m>>2]=n;k=k+1|0}while((k|0)!=(e|0))}}c[j>>2]=(c[j>>2]|0)+(B&65535)}while(0);l=E;return}function sw(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function tw(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];b=c*c+b*b;if(b>0.0)b=1.0/+C(+b);else b=1.0;return +b}function uw(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function vw(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function ww(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function xw(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0;z=l;l=l+16|0;v=z+8|0;w=z;y=c[a+40>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!(c[a+36>>2]&2)){p=(e*3|0)+-6|0;ow(a,p,e);if((e|0)>0){i=a+52|0;h=0;j=c[i>>2]|0;do{u=d+(h<<3)|0;v=c[u+4>>2]|0;w=j;c[w>>2]=c[u>>2];c[w+4>>2]=v;w=(c[i>>2]|0)+8|0;c[w>>2]=x;c[w+4>>2]=y;w=c[i>>2]|0;c[w+16>>2]=f;j=w+20|0;c[i>>2]=j;h=h+1|0}while((h|0)!=(e|0));if((e|0)>2){h=a+48|0;n=c[h>>2]|0;o=n&65535;k=a+56|0;j=c[k>>2]|0;i=2;m=j;while(1){b[m>>1]=o;b[m+2>>1]=i+65535+n;b[m+4>>1]=n+i;i=i+1|0;if((i|0)==(e|0))break;else m=m+6|0}c[k>>2]=j+(p<<1)}else r=18}else r=18;if((r|0)==18)h=a+48|0;i=h;h=e&65535}else{r=f&16777215;u=e<<1;ow(a,(e*9|0)+-6|0,u);i=a+48|0;s=c[i>>2]|0;t=s+1|0;if((e|0)>2){k=s&65535;m=a+56|0;n=s+65534|0;j=c[m>>2]|0;o=(e*3|0)+-6|0;h=2;p=j;while(1){b[p>>1]=k;A=h<<1;b[p+2>>1]=n+A;b[p+4>>1]=A+s;h=h+1|0;if((h|0)==(e|0))break;else p=p+6|0}c[m>>2]=j+(o<<1)}p=l;l=l+((1*(e<<3)|0)+15&-16)|0;o=e+-1|0;k=(e|0)>0;if(k){m=v+4|0;h=o;j=0;while(1){sw(v,d+(j<<3)|0,d+(h<<3)|0);uw(v,+tw(v));c[p+(h<<3)>>2]=c[m>>2];g[p+(h<<3)+4>>2]=-+g[v>>2];h=j+1|0;if((h|0)==(e|0))break;else{A=j;j=h;h=A}}if(k){m=v+4|0;n=a+52|0;k=a+56|0;h=o;j=0;while(1){ww(w,p+(h<<3)|0,p+(j<<3)|0);vw(v,w,.5);q=+g[v>>2];B=+g[m>>2];B=q*q+B*B;q=1.0/B;if(B>9.999999974752427e-07)uw(v,q>100.0?100.0:q);uw(v,.5);A=d+(j<<3)|0;sw(w,A,v);C=w;o=c[C+4>>2]|0;a=c[n>>2]|0;c[a>>2]=c[C>>2];c[a+4>>2]=o;a=(c[n>>2]|0)+8|0;c[a>>2]=x;c[a+4>>2]=y;c[(c[n>>2]|0)+16>>2]=f;ww(w,A,v);A=w;a=c[A+4>>2]|0;o=(c[n>>2]|0)+20|0;c[o>>2]=c[A>>2];c[o+4>>2]=a;o=(c[n>>2]|0)+28|0;c[o>>2]=x;c[o+4>>2]=y;o=c[n>>2]|0;c[o+36>>2]=r;c[n>>2]=o+40;o=j<<1;a=o+s&65535;A=c[k>>2]|0;b[A>>1]=a;h=h<<1;b[A+2>>1]=h+s;h=h+t&65535;b[A+4>>1]=h;b[A+6>>1]=h;b[A+8>>1]=o+t;b[A+10>>1]=a;c[k>>2]=A+12;h=j+1|0;if((h|0)==(e|0))break;else{C=j;j=h;h=C}}}}h=u&65534}c[i>>2]=(c[i>>2]|0)+h;l=z;return}function yw(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m;k=a+84|0;if(d==0.0|(f|0)<(e|0))Gt(k,b);else{Ht(k,1-e+f+(c[k>>2]|0)|0);h=a+40|0;i=b+4|0;a=e;while(1){n=c[h>>2]|0;e=(a|0)%12|0;Ze(j,+g[b>>2]+ +g[n+36+(e<<3)>>2]*d,+g[i>>2]+ +g[n+36+(e<<3)+4>>2]*d);Gt(k,j);if((a|0)<(f|0))a=a+1|0;else break}}l=m;return}function zw(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=+e;f=+f;h=h|0;var i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+16|0;m=n;k=a+84|0;if(!(d==0.0)){j=h+1|0;Ht(k,j+(c[k>>2]|0)|0);if((h|0)>=0){i=+(h|0);f=f-e;h=b+4|0;a=0;do{o=f*(+(a|0)/i)+e;p=+g[b>>2]+ +E(+o)*d;Ze(m,p,+g[h>>2]+ +F(+o)*d);Gt(k,m);a=a+1|0}while((a|0)!=(j|0))}}else Gt(k,b);l=n;return}function Aw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+16|0;o=q;p=a+84|0;k=Bw(p)|0;m=+g[k>>2];n=+g[k+4>>2];if(f){h=1.0/+(f|0);if((f|0)>=1){i=b+4|0;j=d+4|0;k=e+4|0;a=1;while(1){r=h*+(a|0);t=1.0-r;u=t*(t*t);s=t*3.0;t=r*(t*s);s=r*(r*s);r=r*(r*r);Ze(o,m*u+t*+g[b>>2]+s*+g[d>>2]+r*+g[e>>2],n*u+t*+g[i>>2]+s*+g[j>>2]+r*+g[k>>2]);Gt(p,o);if((a|0)==(f|0))break;else a=a+1|0}}}else Cw(p,m,n,+g[b>>2],+g[b+4>>2],+g[d>>2],+g[d+4>>2],+g[e>>2],+g[e+4>>2],+g[(c[a+40>>2]|0)+16>>2],0);l=q;return}function Bw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<3)|0;else Bb(39063,39072,1128,14585);return 0}function Cw(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;n=l;l=l+16|0;m=n;p=h-b;o=i-c;r=(d-h)*o-p*(e-i);q=(f-h)*o-p*(g-i);q=(r>=0.0?r:-r)+(q>=0.0?q:-q);if(!(q*q<(p*p+o*o)*j)){if((k|0)<10){t=(b+d)*.5;s=(c+e)*.5;o=(d+f)*.5;p=(e+g)*.5;q=(f+h)*.5;r=(g+i)*.5;d=(t+o)*.5;e=(s+p)*.5;o=(o+q)*.5;p=(p+r)*.5;f=(d+o)*.5;g=(e+p)*.5;m=k+1|0;Cw(a,b,c,t,s,d,e,f,g,j,m);Cw(a,f,g,o,p,q,r,h,i,j,m)}}else{Ze(m,h,i);Gt(a,m)}l=n;return}function Dw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0,h=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0;m=l;l=l+16|0;j=m;k=+g[b>>2];n=+B(+(+g[c>>2]-k));n=+Ew(d,((e&3|0)==3|(e&12|0)==12?.5:1.0)*n+-1.0);f=c+4|0;h=b+4|0;d=+g[h>>2];i=+B(+(+g[f>>2]-d));i=+Ew(n,((e&5|0)==5|(e&10|0)==10?.5:1.0)*i+-1.0);if((e|0)==0|i<=0.0){zj(a,b);Ze(j,+g[c>>2],+g[h>>2]);zj(a,j);zj(a,c);Ze(j,+g[b>>2],+g[f>>2]);zj(a,j)}else{q=e&1|0?i:0.0;p=e&2|0?i:0.0;o=e&8|0?i:0.0;n=e&4|0?i:0.0;Ze(j,q+k,q+d);yw(a,j,q,6,9);Ze(j,+g[c>>2]-p,p+ +g[h>>2]);yw(a,j,p,9,12);Ze(j,+g[c>>2]-o,+g[f>>2]-o);yw(a,j,o,0,3);Ze(j,n+ +g[b>>2],+g[f>>2]-n);yw(a,j,n,3,6)}l=m;return}function Ew(a,b){a=+a;b=+b;return +(a>>0>=16777216){Ze(g,.5,.5);ww(f,b,g);zj(a,f);Ze(g,.5,.5);ww(f,c,g);zj(a,f);Aj(a,d,0,e)}l=h;return}function Gw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+24|0;j=m+16|0;k=m+8|0;h=m;if(d>>>0>=16777216){Ze(j,.5,.5);ww(i,b,j);Ze(h,.5,.5);sw(k,c,h);Dw(a,i,k,e,f);Aj(a,d,1,g)}l=m;return}function Hw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;do if(d>>>0>=16777216)if(e>0.0){Dw(a,b,c,e,f);Fl(a,d);break}else{ow(a,6,4);pw(a,b,c,d);break}while(0);return}function Iw(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=m+8|0;if((f|e|h|i)>>>0>=16777216){p=c[a+40>>2]|0;o=c[p+4>>2]|0;n=j;c[n>>2]=c[p>>2];c[n+4>>2]=o;ow(a,6,4);n=a+48|0;Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+1&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,c[n>>2]&65535);Au(a,(c[n>>2]|0)+2&65535);Au(a,(c[n>>2]|0)+3&65535);Bu(a,b,j,e);Ze(k,+g[d>>2],+g[b+4>>2]);Bu(a,k,j,f);Bu(a,d,j,h);Ze(k,+g[b>>2],+g[d+4>>2]);Bu(a,k,j,i)}l=m;return}function Jw(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;if(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Aj(a,f,1,g)}return}function Kw(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(f>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);zj(a,e);Fl(a,f)}return}function Lw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Aj(a,e,1,f)}return}function Mw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(e>>>0>=16777216){zj(a,b);zj(a,c);zj(a,d);Fl(a,e)}return}function Nw(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0.0;if(d>>>0>=16777216){g=+(e|0);zw(a,b,c+-.5,0.0,(g+-1.0)*6.2831854820251465/g,e);Aj(a,d,1,f)}return}function Ow(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0.0;f=+(e|0);if(d>>>0>=16777216){zw(a,b,c,0.0,(f+-1.0)*6.2831854820251465/f,e);Fl(a,d)}return}function Pw(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;if(f>>>0>=16777216){zj(a,b);Aw(a,c,d,e,h);Aj(a,f,0,g)}return}function Qw(a,b,d,e,f,h,i,j,k){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;p=q+24|0;o=q+8|0;n=q;if(f>>>0>=16777216){if(!i)i=h+(v9(h)|0)|0;if((i|0)!=(h|0)){if(!b)b=c[(c[a+40>>2]|0)+8>>2]|0;if(d==0.0)d=+g[(c[a+40>>2]|0)+12>>2];m=c[(c[b+68>>2]|0)+4>>2]|0;if((m|0)!=(c[(jw(a+72|0)|0)>>2]|0))Bb(14630,14423,1112,38892);m=_i(a+60|0)|0;c[o>>2]=c[m>>2];c[o+4>>2]=c[m+4>>2];c[o+8>>2]=c[m+8>>2];c[o+12>>2]=c[m+12>>2];m=(k|0)!=0;if(m){g[o>>2]=+Zv(+g[o>>2],+g[k>>2]);r=o+4|0;g[r>>2]=+Zv(+g[r>>2],+g[k+4>>2]);r=o+8|0;g[r>>2]=+Ew(+g[r>>2],+g[k+8>>2]);r=o+12|0;g[r>>2]=+Ew(+g[r>>2],+g[k+12>>2])}k=c[e+4>>2]|0;r=n;c[r>>2]=c[e>>2];c[r+4>>2]=k;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];Rw(b,a,d,p,f,o,h,i,j,m)}}l=q;return}function Rw(d,e,f,h,i,j,k,m,n,o){d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;o=o|0;var p=0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0;W=l;l=l+16|0;T=W;if(!m)R=k+(v9(k)|0)|0;else R=m;r=+g[d+8>>2]+ +(~~+g[h>>2]|0);g[h>>2]=r;S=h+4|0;t=+g[d+12>>2]+ +(~~+g[S>>2]|0);g[S>>2]=t;S=j+12|0;if(!(t>+g[S>>2])){P=+g[d>>2];O=f/P;P=P*O;Q=n>0.0;a:do if(!Q?(R>>>0>k>>>0?t+P<+g[j+4>>2]:0):0){m=k;while(1){if((a[m>>0]|0)==10){p=m;break a}m=m+1|0;if(m>>>0>=R>>>0){p=m;break}}}else p=k;while(0);L=R-p|0;I=L*6|0;J=e+12|0;K=c[J>>2]|0;ow(e,I,L<<2);L=e+52|0;m=c[L>>2]|0;M=e+56|0;k=c[M>>2]|0;N=e+48|0;b:do if(p>>>0>>0){G=j+4|0;H=j+8|0;F=c[N>>2]|0;f=t;y=0;c:while(1){t=r;u=f;s=y;q=p;while(1){if(!Q){s=y;break}if(!s){s=Sw(d,O,q,R,n-(t-+g[h>>2]))|0;s=(s|0)==(q|0)?s+1|0:s}if(q>>>0>>0){r=t;f=u;p=q;break}t=+g[h>>2];u=P+u;do{if(q>>>0>=R>>>0)break;X=a[q>>0]|0;s=Tw(X<<24>>24)|0;q=s|X<<24>>24==10?q+1|0:q}while(s);if(q>>>0>=R>>>0)break b;else s=0}X=a[p>>0]|0;q=X<<24>>24;c[T>>2]=q;if(X<<24>>24<=-1){p=p+(Bf(T,p,R)|0)|0;q=c[T>>2]|0;if(!q)break}else p=p+1|0;d:do if(q>>>0<32){switch(q|0){case 13:{q=F;break d}case 10:break;default:{V=29;break d}}r=+g[h>>2];f=P+f;if(f>+g[S>>2])break c;if(!Q?(p>>>0>>0?P+f<+g[G>>2]:0):0)while(1){if((a[p>>0]|0)==10){q=F;break d}p=p+1|0;if(p>>>0>=R>>>0){q=F;break}}else q=F}else V=29;while(0);e:do if((V|0)==29){V=0;q=Uw(d,q&65535)|0;f:do if(q){t=O*+g[q+4>>2];switch(c[T>>2]|0){case 9:case 32:{q=F;break f}default:{}}u=r+O*+g[q+8>>2];w=r+O*+g[q+16>>2];z=f+O*+g[q+12>>2];E=f+O*+g[q+20>>2];D=+g[H>>2];if(u<=D?(U=+g[j>>2],w>=U):0){x=+g[q+24>>2];B=+g[q+28>>2];A=+g[q+32>>2];v=+g[q+36>>2];do if(o){if(u>2];if(zD){A=C+(A-C)*((D-u)/(w-u));w=D}x=+g[S>>2];if(E>x)v=B+(v-B)*((x-z)/(E-z));else x=E;if(!(z>=x))break;q=F;r=r+t;break e}else{C=x;x=E}while(0);X=F&65535;b[k>>1]=X;b[k+2>>1]=F+1;q=F+2&65535;b[k+4>>1]=q;b[k+6>>1]=X;b[k+8>>1]=q;b[k+10>>1]=F+3;g[m>>2]=u;g[m+4>>2]=z;c[m+16>>2]=i;g[m+8>>2]=C;g[m+12>>2]=B;g[m+20>>2]=w;g[m+24>>2]=z;c[m+36>>2]=i;g[m+28>>2]=A;g[m+32>>2]=B;g[m+40>>2]=w;g[m+44>>2]=x;c[m+56>>2]=i;g[m+48>>2]=A;g[m+52>>2]=v;g[m+60>>2]=u;g[m+64>>2]=x;c[m+76>>2]=i;g[m+68>>2]=C;g[m+72>>2]=v;q=F+4|0;k=k+12|0;m=m+80|0}else q=F}else{t=0.0;q=F}while(0);r=r+t}while(0);if(p>>>0>>0){F=q;y=s}else break b}}while(0);X=e+24|0;Av(X,(m-(c[e+32>>2]|0)|0)/20|0);Jp(J,k-(c[e+20>>2]|0)>>1);V=c[J>>2]|0;e=Vw(e,(c[e>>2]|0)+-1|0)|0;c[e>>2]=V-(I+K)+(c[e>>2]|0);c[L>>2]=m;c[M>>2]=k;c[N>>2]=c[X>>2]}l=W;return}function Sw(b,d,e,f,h){b=b|0;d=+d;e=e|0;f=f|0;h=+h;var i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;v=l;l=l+16|0;u=v;t=h/d;a:do if(e>>>0>>0){s=b+28|0;r=b+56|0;b=e;k=1;o=0;q=e;d=0.0;h=0.0;j=0.0;b:while(1){c:while(1){p=a[b>>0]|0;e=p<<24>>24;c[u>>2]=e;if(p<<24>>24>-1)i=1;else{i=Bf(u,b,f)|0;e=c[u>>2]|0}p=b+i|0;if(!e){e=7;break b}if(e>>>0>=32)break;switch(e|0){case 10:{e=1;h=0.0;d=0.0;j=0.0;break}case 13:{e=k;break}default:break c}if(p>>>0>>0){b=p;k=e}else{b=p;break a}}if((e|0)<(c[s>>2]|0)){i=yu(s,e)|0;n=c[u>>2]|0}else{i=r;n=e}m=+g[i>>2];d:do if(Tw(n)|0){n=0;i=k?b:q;m=(k?0.0:d)+m;j=k?j+d:j}else{h=h+m;j=k?j:j+(d+h);h=k?h:0.0;d=k?d:0.0;i=k?p:q;e=k?o:q;switch(n|0){case 34:case 33:case 44:case 46:case 59:case 63:{n=0;o=e;m=d;break d}default:{}}n=1;o=e;m=d}while(0);if(j+h>=t){e=18;break}if(p>>>0>>0){b=p;k=n<<24>>24!=0;q=i;d=m}else{b=p;break a}}if((e|0)==7)break;else if((e|0)==18){b=h=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Uw(a,d){a=a|0;d=d|0;var e=0,f=0;d=d&65535;e=a+40|0;if((c[e>>2]|0)>(d|0)?(f=b[(vu(e,d)|0)>>1]|0,f<<16>>16!=-1):0)d=(c[a+24>>2]|0)+((f&65535)*40|0)|0;else d=c[a+52>>2]|0;return d|0}function Vw(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<5)|0;else Bb(14314,39072,1118,14323);return 0}function Ww(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Qw(a,0,0.0,b,c,d,e,0.0,0);return}function Xw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k;c[i>>2]=b;do if(h>>>0>=16777216){j=a+72|0;if(!(Yw(j)|0)?(c[(jw(j)|0)>>2]|0)==(b|0):0){ow(a,6,4);qw(a,d,e,f,g,h);break}cw(a,i);ow(a,6,4);qw(a,d,e,f,g,h);ew(a)}while(0);l=k;return}function Yw(a){a=a|0;return (c[a>>2]|0)==0|0}function Zw(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function _w(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;k=l;l=l+16|0;i=k;j=a+8|0;d=c[j>>2]|0;if((d|0)>0){f=a+4|0;h=b+4|0;e=0;a=d;do{d=c[(c[f>>2]|0)+(e<<2)>>2]|0;if((c[d>>2]|0)>0){a=0;do{n=Vw(d,a)|0;m=n+4|0;p=+g[b>>2];o=+g[h>>2];If(i,+g[m>>2]*p,+g[n+8>>2]*o,p*+g[n+12>>2],o*+g[n+16>>2]);c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];a=a+1|0}while((a|0)<(c[d>>2]|0));a=c[j>>2]|0}e=e+1|0}while((e|0)<(a|0))}l=k;return}function $w(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;o=q+8|0;p=q;sw(o,e,d);n=1.0/+ax(o);if(a>>>0>>0){i=f&255;j=g&255;k=f>>>8&255;m=g>>>8&255;h=f>>>16&255;f=g>>>16&255;e=a;do{sw(p,e,d);r=+Zw(n*+bx(p,o),0.0,1.0);g=cx(i,j,r)|0;a=cx(k,m,r)|0;g=a<<8|g|(cx(h,f,r)|0)<<16;a=e+16|0;c[a>>2]=g|c[a>>2]&-16777216;e=e+20|0}while(e>>>0>>0)}l=q;return}function ax(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function bx(a,b){a=a|0;b=b|0;return +(+g[a>>2]*+g[b>>2]+ +g[a+4>>2]*+g[b+4>>2])}function cx(a,b,c){a=a|0;b=b|0;c=+c;return ~~(+(b-a|0)*c+ +(a|0))|0}function dx(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0;e=l;l=l+16|0;h=e;f=b+32|0;Xe(f);d=b+40|0;Xe(d);c[b>>2]=0;c[b+4>>2]=0;a[b+8>>0]=1;c[b+12>>2]=0;g[b+16>>2]=0.0;c[b+20>>2]=3;c[b+24>>2]=1;a[b+28>>0]=0;Ze(h,0.0,0.0);j=h;i=c[j+4>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=i;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[d>>2]=c[h>>2];c[d+4>>2]=f;c[b+48>>2]=0;a[b+52>>0]=0;c[b+56>>2]=0;g[b+60>>2]=1.0;b=b+64|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function ex(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;f=b;e=a+32|0;Xe(e);d=a+40|0;Xe(d);ys(a+48|0);fx(a+60|0);gx(a+72|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=1;h=a+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;Ze(f,0.0,0.0);h=f;g=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=g;Ze(f,0.0,0.0);e=c[f+4>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;c[a+84>>2]=-1;l=b;return}function fx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function gx(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function hx(a){a=a|0;ix(a);jx(a+72|0);kx(a+60|0);Ss(a+48|0);return}function ix(a){a=a|0;lx(a);mx(a);nx(a);return}function jx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function kx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function lx(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d+72|0;if((c[h>>2]|0)>0){e=0;do{if(c[(ux(h,e)|0)>>2]|0?a[(ux(h,e)|0)+8>>0]|0:0){Uf(c[(ux(h,e)|0)>>2]|0);c[(ux(h,e)|0)>>2]=0}e=e+1|0}while((e|0)<(c[h>>2]|0))}f=d+48|0;if((c[f>>2]|0)>0){g=d+80|0;e=0;do{i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0;if(i>>>0>=(c[g>>2]|0)>>>0?(i=c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]|0,i>>>0<((c[g>>2]|0)+((c[h>>2]|0)*100|0)|0)>>>0):0){c[(c[(Sh(f,e)|0)>>2]|0)+64>>2]=0;b[(c[(Sh(f,e)|0)>>2]|0)+62>>1]=0}e=e+1|0}while((e|0)<(c[f>>2]|0))}vx(h);wx(d+60|0);c[d+84>>2]=-1;return}function mx(a){a=a|0;var b=0,d=0;d=a+16|0;b=c[d>>2]|0;if(b|0)Uf(b);a=a+20|0;b=c[a>>2]|0;if(b|0)Uf(b);c[d>>2]=0;c[a>>2]=0;return}function nx(a){a=a|0;var b=0;b=a+48|0;if((c[b>>2]|0)>0){a=0;do{ox(Sh(b,a)|0);a=a+1|0}while((a|0)<(c[b>>2]|0))}Ji(b);return}function ox(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){px(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function px(a){a=a|0;qx(a);ns(a+40|0);Zr(a+28|0);rx(a+16|0);return}function qx(a){a=a|0;var d=0;g[a>>2]=0.0;sx(a+16|0);tx(a+28|0);Ni(a+40|0);c[a+52>>2]=0;g[a+56>>2]=0.0;a=a+62|0;d=a+22|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(d|0));return}function rx(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function sx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function tx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function ux(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*100|0)|0;else Bb(14314,39072,1118,14323);return 0}function vx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function wx(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function xx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=a+16|0;g=c[h>>2]|0;if(!g){if(yx(a+72|0)|0)zx(a,0)|0;Ax(a)|0;g=c[h>>2]|0}c[b>>2]=g;if(d|0)c[d>>2]=c[a+24>>2];if(e|0)c[e>>2]=c[a+28>>2];if(f|0)c[f>>2]=1;return}function yx(a){a=a|0;return (c[a>>2]|0)==0|0}function zx(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0,i=0,j=0;j=l;l=l+112|0;i=j;if(!d){dx(i);c[i+24>>2]=1;c[i+20>>2]=1;a[i+28>>0]=1}else{f=i;h=f+100|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(h|0))}f=i+64|0;if(!(a[f>>0]|0)){d=19381;h=f+22|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(h|0))}f=i+16|0;e=+g[f>>2];if(e<=0.0){g[f>>2]=13.0;e=13.0}i=Lz(b,19403,e,i,4968)|0;l=j;return i|0}function Ax(a){a=a|0;return Bx(a)|0}function Bx(d){d=d|0;var f=0,h=0.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,v=0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;V=l;l=l+352|0;E=V+256|0;M=V;N=V+340|0;P=V+336|0;Q=V+304|0;R=V+300|0;S=V+296|0;T=d+72|0;if((c[T>>2]|0)<=0)Bb(14684,14423,1665,14711);Cx(d);c[d+4>>2]=0;K=d+28|0;c[K>>2]=0;L=d+24|0;c[L>>2]=0;Ze(E,0.0,0.0);D=d+32|0;J=E;I=c[J+4>>2]|0;H=D;c[H>>2]=c[J>>2];c[H+4>>2]=I;Ze(E,0.0,0.0);H=E;I=c[H+4>>2]|0;J=d+40|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;mx(d);if((c[T>>2]|0)>0){m=0;f=0;n=0;while(1){i=(ux(T,n)|0)+48|0;j=c[i>>2]|0;if(!j){c[i>>2]=4968;j=4968}k=b[j>>1]|0;a:do if(!(k<<16>>16))i=m;else{i=m;m=k;do{k=b[j+2>>1]|0;if(!(k<<16>>16))break a;i=i+1-(m&65535)+(k&65535)|0;j=j+4|0;f=f+1|0;m=b[j>>1]|0}while(m<<16>>16!=0)}while(0);n=n+1|0;if((n|0)>=(c[T>>2]|0)){x=i;w=f;break}else m=i}}else{x=0;w=0}f=c[d+8>>2]|0;if((f|0)<=0)if((x|0)>4e3)f=4096;else f=(x|0)>2e3?2048:(x|0)>1e3?1024:512;c[L>>2]=f;c[K>>2]=0;i=E;j=i+40|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b:do if(!(Dx(E,f,c[d+12>>2]|0)|0))f=0;else{Ex(E,1,1);v=E+4|0;Fx(d,c[v>>2]|0);J=vf((c[T>>2]|0)*136|0)|0;c:do if((c[T>>2]|0)>0){k=0;while(1){j=ux(T,k)|0;f=j+96|0;i=c[f>>2]|0;if(!i){U=19;break}if(Th(i)|0?(c[(c[f>>2]|0)+68>>2]|0)!=(d|0):0){U=19;break}i=c[j>>2]|0;f=Gx(i,c[j+12>>2]|0)|0;if((f|0)<=-1){U=21;break}if(!(Hx(J+(k*136|0)|0,i,f)|0)){U=23;break}k=k+1|0;if((k|0)>=(c[T>>2]|0))break c}if((U|0)==19)Bb(14743,14423,1716,14711);else if((U|0)==21)Bb(14825,14423,1719,14711);else if((U|0)==23){c[K>>2]=0;c[L>>2]=0;Uf(J);f=0;break b}}while(0);s=x*28|0;H=vf(s)|0;t=x<<4;y=vf(t)|0;u=w*24|0;I=vf(u)|0;sca(H|0,0,s|0)|0;sca(y|0,0,t|0)|0;sca(I|0,0,u|0)|0;d:do if((c[T>>2]|0)>0){j=0;s=0;o=0;u=0;while(1){t=ux(T,u)|0;r=c[t+48>>2]|0;f=b[r>>1]|0;e:do if(!(f<<16>>16)){m=0;k=0}else{m=0;k=0;n=r;while(1){i=b[n+2>>1]|0;if(!(i<<16>>16))break e;i=m+1-(f&65535)+(i&65535)|0;n=n+4|0;k=k+1|0;f=b[n>>1]|0;if(!(f<<16>>16)){m=i;break}else m=i}}while(0);n=I+(o*24|0)|0;p=J+(u*136|0)+128|0;c[p>>2]=n;q=J+(u*136|0)+132|0;c[q>>2]=k;o=k+o|0;if((k|0)>0){i=c[t+16>>2]|0;f=0;do{X=r+(f<<1<<1)|0;c[n+(f*24|0)>>2]=i;W=e[X>>1]|0;c[n+(f*24|0)+4>>2]=W;W=(e[X+2>>1]|0)-W+1|0;c[n+(f*24|0)+12>>2]=W;c[n+(f*24|0)+16>>2]=H+(j*28|0);j=W+j|0;f=f+1|0}while((f|0)!=(k|0))}f=J+(u*136|0)+120|0;c[f>>2]=y+(s<<4);c[J+(u*136|0)+124>>2]=m;k=m+s|0;Ex(E,c[t+20>>2]|0,c[t+24>>2]|0);if((Ix(E,J+(u*136|0)|0,c[p>>2]|0,c[q>>2]|0,c[f>>2]|0)|0)!=(m|0))break;Jx(c[v>>2]|0,c[f>>2]|0,m);if((m|0)>0){i=c[f>>2]|0;f=0;do{if(c[i+(f<<4)+12>>2]|0)c[K>>2]=Kx(c[K>>2]|0,(e[i+(f<<4)+6>>1]|0)+(e[i+(f<<4)+10>>1]|0)|0)|0;f=f+1|0}while((f|0)!=(m|0))}u=u+1|0;if((u|0)>=(c[T>>2]|0)){z=j;B=k;C=o;break d}else s=k}Bb(14842,14423,1768,14711)}else{z=0;B=0;C=0}while(0);if((B|0)!=(x|0))Bb(14865,14423,1776,14711);if((z|0)!=(x|0))Bb(14899,14423,1777,14711);if((C|0)!=(w|0))Bb(14939,14423,1778,14711);f=c[K>>2]|0;if(!(c[d>>2]&1))f=Lx(f)|0;else f=f+1|0;c[K>>2]=f;Ze(M,1.0/+(c[L>>2]|0),1.0/+(f|0));W=M;X=c[W+4>>2]|0;o=D;c[o>>2]=c[W>>2];c[o+4>>2]=X;o=vf(O(c[K>>2]|0,c[L>>2]|0)|0)|0;X=d+16|0;c[X>>2]=o;sca(o|0,0,O(c[K>>2]|0,c[L>>2]|0)|0)|0;o=E+32|0;c[o>>2]=c[X>>2];c[E+12>>2]=c[K>>2];if((c[T>>2]|0)>0){p=E+16|0;n=0;do{X=ux(T,n)|0;Ex(E,c[X+20>>2]|0,c[X+24>>2]|0);q=J+(n*136|0)+120|0;Nx(E,J+(n*136|0)|0,c[J+(n*136|0)+128>>2]|0,c[J+(n*136|0)+132>>2]|0,c[q>>2]|0);h=+g[X+60>>2];if(h!=1.0?(Ox(M,h),F=J+(n*136|0)+124|0,G=c[F>>2]|0,G|0):0){i=c[q>>2]|0;k=c[o>>2]|0;m=c[p>>2]|0;j=i;f=G;do{if(c[j+12>>2]|0){Px(M,k,e[j+8>>1]|0,e[j+10>>1]|0,e[j+4>>1]|0,e[j+6>>1]|0,m);i=c[q>>2]|0;f=c[F>>2]|0}j=j+16|0}while((j|0)!=(i+(f<<4)|0))}c[q>>2]=0;n=n+1|0}while((n|0)<(c[T>>2]|0))}Mx(E);Uf(y);if((c[T>>2]|0)>0){s=Q+4|0;t=Q+16|0;u=Q+20|0;v=Q+8|0;w=Q+12|0;x=Q+24|0;y=Q+28|0;r=0;do{f=ux(T,r)|0;z=c[f+96>>2]|0;B=J+(r*136|0)|0;h=+Rx(B,+g[f+16>>2]);Sx(B,M,N,P);Tx(d,z,f,h*+(c[M>>2]|0),h*+(c[N>>2]|0));h=+g[f+40>>2];A=+g[f+44>>2]+ +(~~(+g[z+72>>2]+.5)|0);B=J+(r*136|0)+132|0;i=c[B>>2]|0;if((i|0)>0){C=J+(r*136|0)+128|0;q=f+52|0;p=0;f=i;do{i=c[C>>2]|0;o=i+(p*24|0)+12|0;if((c[o>>2]|0)>0){n=i+(p*24|0)+16|0;j=i+(p*24|0)+4|0;f=0;do{k=c[n>>2]|0;do if(!(b[k+(f*28|0)>>1]|0)){if(b[k+(f*28|0)+4>>1]|0){U=73;break}if(b[k+(f*28|0)+2>>1]|0){U=73;break}if(b[k+(f*28|0)+6>>1]|0)U=73}else U=73;while(0);do if((U|0)==73){U=0;i=(c[j>>2]|0)+f&65535;if(!(a[q>>0]|0))m=k;else{if(Uw(z,i)|0)break;m=c[n>>2]|0}g[R>>2]=0.0;g[S>>2]=0.0;Ux(m,c[L>>2]|0,c[K>>2]|0,f,R,S,Q);Vx(z,i,h+ +g[Q>>2],A+ +g[s>>2],h+ +g[t>>2],A+ +g[u>>2],+g[v>>2],+g[w>>2],+g[x>>2],+g[y>>2],+g[k+(f*28|0)+16>>2])}while(0);f=f+1|0}while((f|0)<(c[o>>2]|0));f=c[B>>2]|0}p=p+1|0}while((p|0)<(f|0))}r=r+1|0}while((r|0)<(c[T>>2]|0))}Uf(H);Uf(I);Uf(J);Qx(d);f=1}while(0);l=V;return f|0}function Cx(a){a=a|0;var b=0;b=a+84|0;if((c[b>>2]|0)<=-1){if(!(c[a>>2]&2))a=Gz(a,-2147483648,181,27)|0;else a=Gz(a,-2147483648,2,2)|0;c[b>>2]=a}return}function Dx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=vf(48)|0;f=b-d|0;g=vf(f<<3)|0;h=(e|0)==0;i=(g|0)==0;if(h|i){if(!h)Uf(e);if(i)a=0;else{Uf(g);a=0}}else{c[a>>2]=0;c[a+8>>2]=b;c[a+12>>2]=32768;c[a+32>>2]=0;c[a+4>>2]=e;c[a+36>>2]=g;c[a+20>>2]=d;c[a+16>>2]=b;c[a+24>>2]=1;c[a+28>>2]=1;Ez(e,f,32768-d|0,g,f);a=1}return a|0}function Ex(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0>=9)Bb(19170,17918,3427,19188);if(d>>>0<9){c[a+24>>2]=b;c[a+28>>2]=d;return}else Bb(19214,17918,3428,19188)}function Fx(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;h=a+60|0;if((c[h>>2]|0)<=0)Bb(19035,14423,1888,19056);yz(g);zz(g,c[h>>2]|0);sca(c[g+8>>2]|0,0,c[h>>2]<<4|0)|0;if((c[h>>2]|0)>0){f=0;do{j=b[(ay(h,f)|0)+4>>1]|0;b[(Az(g,f)|0)+4>>1]=j;j=b[(ay(h,f)|0)+6>>1]|0;b[(Az(g,f)|0)+6>>1]=j;f=f+1|0}while((f|0)<(c[h>>2]|0))}j=Az(g,0)|0;Jx(d,j,c[g>>2]|0);a:do if((c[g>>2]|0)>0){a=a+28|0;f=0;while(1){if(c[(Az(g,f)|0)+12>>2]|0){j=b[(Az(g,f)|0)+8>>1]|0;b[(ay(h,f)|0)+8>>1]=j;j=b[(Az(g,f)|0)+10>>1]|0;b[(ay(h,f)|0)+10>>1]=j;j=b[(Az(g,f)|0)+4>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+4>>1]|0))break;j=b[(Az(g,f)|0)+6>>1]|0;if(j<<16>>16!=(b[(ay(h,f)|0)+6>>1]|0))break;d=c[a>>2]|0;j=b[(Az(g,f)|0)+10>>1]|0;c[a>>2]=Kx(d,(e[(Az(g,f)|0)+6>>1]|0)+(j&65535)|0)|0}f=f+1|0;if((f|0)>=(c[g>>2]|0))break a}Bb(19088,14423,1904,19056)}while(0);Bz(g);l=i;return}function Gx(a,b){a=a|0;b=b|0;return vz(a,b)|0}function Hx(a,b,c){a=a|0;b=b|0;c=c|0;return tz(a,b,c)|0}function Ix(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0.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;y=l;l=l+16|0;u=y+12|0;v=y+8|0;w=y+4|0;x=y;if((h|0)>0){s=d+24|0;t=d+28|0;r=d+20|0;d=0;q=0;do{j=+g[f+(q*24|0)>>2];if(j>0.0)j=+Rx(e,j);else j=+jy(e,-j);a[f+(q*24|0)+20>>0]=c[s>>2];a[f+(q*24|0)+21>>0]=c[t>>2];n=f+(q*24|0)+12|0;if((c[n>>2]|0)>0){o=f+(q*24|0)+8|0;p=f+(q*24|0)+4|0;m=0;do{k=c[o>>2]|0;if(!k)k=(c[p>>2]|0)+m|0;else k=c[k+(m<<2)>>2]|0;k=ly(e,k)|0;sy(e,k,j*+((c[s>>2]|0)>>>0),j*+((c[t>>2]|0)>>>0),u,v,w,x);k=c[r>>2]|0;b[i+(d<<4)+4>>1]=(c[w>>2]|0)+65535-(c[u>>2]|0)+k+(c[s>>2]|0);b[i+(d<<4)+6>>1]=(c[x>>2]|0)+65535-(c[v>>2]|0)+k+(c[t>>2]|0);d=d+1|0;m=m+1|0}while((m|0)<(c[n>>2]|0))}q=q+1|0}while((q|0)!=(h|0))}else d=0;l=y;return d|0}function Jx(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p;n=(e|0)>0;if(n){f=0;do{c[d+(f<<4)+12>>2]=f;f=f+1|0}while((f|0)!=(e|0));j9(d,e,16,2);if(n){i=m+8|0;j=m+4|0;h=0;do{f=b[d+(h<<4)+4>>1]|0;if(f<<16>>16!=0?(k=b[d+(h<<4)+6>>1]|0,k<<16>>16!=0):0){pz(m,a,f&65535,k&65535);if(!(c[i>>2]|0)){f=-1;g=-1}else{f=c[m>>2]&65535;g=c[j>>2]&65535}b[d+(h<<4)+10>>1]=g;b[d+(h<<4)+8>>1]=f}else{b[d+(h<<4)+10>>1]=0;b[d+(h<<4)+8>>1]=0}h=h+1|0}while((h|0)!=(e|0));j9(d,e,16,3);if(n){f=0;do{if((b[d+(f<<4)+8>>1]|0)==-1)g=(b[d+(f<<4)+10>>1]|0)==-1;else g=0;c[d+(f<<4)+12>>2]=(g^1)&1;f=f+1|0}while((f|0)!=(e|0))}}else o=13}else{j9(d,e,16,2);o=13}if((o|0)==13)j9(d,e,16,3);l=p;return}function Kx(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function Lx(a){a=a|0;a=a+-1|0;a=a>>1|a;a=a>>2|a;a=a>>4|a;a=a>>8|a;return (a>>16|a)+1|0}function Mx(a){a=a|0;Uf(c[a+36>>2]|0);Uf(c[a+4>>2]|0);return}function Nx(d,f,h,i,j){d=d|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0.0,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,P=0,Q=0,R=0,S=0,T=0,U=0;Q=l;l=l+32|0;K=Q+20|0;L=Q+16|0;M=Q+12|0;N=Q+8|0;P=Q+4|0;D=Q;E=d+24|0;F=c[E>>2]|0;G=d+28|0;H=c[G>>2]|0;if((i|0)>0){I=d+20|0;J=d+32|0;C=d+16|0;B=0;d=0;do{k=+g[h+(B*24|0)>>2];if(k>0.0)A=+Rx(f,k);else A=+jy(f,-k);y=a[h+(B*24|0)+20>>0]|0;m=y&255;c[E>>2]=m;z=a[h+(B*24|0)+21>>0]|0;w=z&255;c[G>>2]=w;k=1.0/+(y&255);t=1.0/+(z&255);u=+ky(m);v=+ky(w);w=h+(B*24|0)+12|0;m=c[w>>2]|0;if((m|0)>0){x=h+(B*24|0)+16|0;y=h+(B*24|0)+8|0;z=h+(B*24|0)+4|0;s=0;do{if(c[j+(d<<4)+12>>2]|0){r=c[x>>2]|0;m=c[y>>2]|0;if(!m)m=(c[z>>2]|0)+s|0;else m=c[m+(s<<2)>>2]|0;m=ly(f,m)|0;T=c[I>>2]|0;n=j+(d<<4)+8|0;b[n>>1]=T+(e[n>>1]|0);o=j+(d<<4)+10|0;b[o>>1]=T+(e[o>>1]|0);p=j+(d<<4)+4|0;b[p>>1]=(e[p>>1]|0)-T;q=j+(d<<4)+6|0;b[q>>1]=(e[q>>1]|0)-T;my(f,m,K,L);ny(f,m,A*+((c[E>>2]|0)>>>0),A*+((c[G>>2]|0)>>>0),M,N,P,D);T=c[C>>2]|0;U=(c[J>>2]|0)+(e[n>>1]|0)+(O(T,e[o>>1]|0)|0)|0;S=c[E>>2]|0;R=c[G>>2]|0;oy(f,U,1-S+(e[p>>1]|0)|0,1-R+(e[q>>1]|0)|0,T,A*+(S>>>0),A*+(R>>>0),m);m=c[E>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;py(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=c[G>>2]|0;if(m>>>0>1){U=c[C>>2]|0;T=(c[J>>2]|0)+(e[n>>1]|0)+(O(U,e[o>>1]|0)|0)|0;qy(T,e[p>>1]|0,e[q>>1]|0,U,m)}m=b[n>>1]|0;b[r+(s*28|0)>>1]=m;S=b[o>>1]|0;b[r+(s*28|0)+2>>1]=S;T=e[p>>1]|0;b[r+(s*28|0)+4>>1]=T+(m&65535);m=e[q>>1]|0;b[r+(s*28|0)+6>>1]=m+(S&65535);g[r+(s*28|0)+16>>2]=A*+(c[K>>2]|0);S=c[M>>2]|0;g[r+(s*28|0)+8>>2]=u+k*+(S|0);U=c[N>>2]|0;g[r+(s*28|0)+12>>2]=v+t*+(U|0);g[r+(s*28|0)+20>>2]=u+k*+(S+T|0);g[r+(s*28|0)+24>>2]=v+t*+(U+m|0);m=c[w>>2]|0}d=d+1|0;s=s+1|0}while((s|0)<(m|0))}B=B+1|0}while((B|0)!=(i|0))}c[E>>2]=F;c[G>>2]=H;l=Q;return}function Ox(b,c){b=b|0;c=+c;var d=0,e=0;d=0;do{e=~~(+(d>>>0)*c)>>>0;a[b+d>>0]=e>>>0<255?e:255;d=d+1|0}while((d|0)!=256);return}function Px(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((h|0)>0){k=(g|0)>0;j=h;h=c+e+(O(i,f)|0)|0;while(1){if(k){c=0;do{f=h+c|0;a[f>>0]=a[b+(d[f>>0]|0)>>0]|0;c=c+1|0}while((c|0)!=(g|0))}if((j|0)>1){j=j+-1|0;h=h+i|0}else break}}return}function Qx(a){a=a|0;var b=0,d=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0.0;o=l;l=l+16|0;d=o+8|0;j=o;$x(a);k=a+60|0;a:do if((c[k>>2]|0)>0){m=d+4|0;n=j+4|0;b=0;while(1){f=ay(k,b)|0;h=f+24|0;i=c[h>>2]|0;if(i|0?(c[f>>2]|0)>>>0<=65536:0){if((c[i+68>>2]|0)!=(a|0))break;Xe(d);Xe(j);by(a,f,d,j);q=+g[f+16>>2];p=+g[f+20>>2];Vx(c[h>>2]|0,c[f>>2]&65535,q,p,q+ +(e[f+4>>1]|0),p+ +(e[f+6>>1]|0),+g[d>>2],+g[m>>2],+g[j>>2],+g[n>>2],+g[f+12>>2])}b=b+1|0;if((b|0)>=(c[k>>2]|0))break a}Bb(14974,14423,1952,15006)}while(0);a=a+48|0;if((c[a>>2]|0)>0){b=0;do{cy(c[(Sh(a,b)|0)>>2]|0);b=b+1|0}while((b|0)<(c[a>>2]|0))}l=o;return}function Rx(a,b){a=a|0;b=+b;var d=0;a=(c[a+4>>2]|0)+(c[a+28>>2]|0)|0;d=(_x(a+4|0)|0)<<16>>16;return +(b/+(d-((_x(a+6|0)|0)<<16>>16)|0))}function Sx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(b|0)c[b>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+4|0)|0)<<16>>16;if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+6|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+(c[a+28>>2]|0)+8|0)|0)<<16>>16;return}function Tx(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=+i;if(!(a[f+52>>0]|0)){qx(e);c[e>>2]=c[f+16>>2];c[e+64>>2]=f;c[e+68>>2]=d;g[e+72>>2]=h;g[e+76>>2]=i}f=e+62|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;return}function Ux(a,b,c,d,f,h,i){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0.0,k=0.0;k=1.0/+(b|0);j=1.0/+(c|0);g[i>>2]=+g[f>>2]+ +g[a+(d*28|0)+8>>2];g[i+4>>2]=+g[h>>2]+ +g[a+(d*28|0)+12>>2];g[i+16>>2]=+g[f>>2]+ +g[a+(d*28|0)+20>>2];g[i+20>>2]=+g[h>>2]+ +g[a+(d*28|0)+24>>2];g[i+8>>2]=k*+(e[a+(d*28|0)>>1]|0);g[i+12>>2]=j*+(e[a+(d*28|0)+2>>1]|0);g[i+24>>2]=k*+(e[a+(d*28|0)+4>>1]|0);g[i+28>>2]=j*+(e[a+(d*28|0)+6>>1]|0);g[f>>2]=+g[a+(d*28|0)+16>>2]+ +g[f>>2];return}function Vx(d,e,f,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=+f;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;var p=0,q=0;q=d+16|0;Wx(q,(c[q>>2]|0)+1|0);q=Xx(q)|0;b[q>>1]=e;g[q+8>>2]=f;g[q+12>>2]=h;g[q+16>>2]=i;g[q+20>>2]=j;g[q+24>>2]=k;g[q+28>>2]=l;g[q+32>>2]=m;g[q+36>>2]=n;p=c[d+64>>2]|0;o=+g[p+32>>2]+o;e=q+4|0;g[e>>2]=o;if(a[p+28>>0]|0)g[e>>2]=+(~~(o+.5)|0);p=c[d+68>>2]|0;p=O(~~((n-l)*+(c[p+28>>2]|0)+1.9900000095367432),~~((m-k)*+(c[p+24>>2]|0)+1.9900000095367432))|0;q=d+80|0;c[q>>2]=p+(c[q>>2]|0);return}function Wx(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Zx(a,Yx(a,b)|0);c[a>>2]=b;return}function Xx(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Yx(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Zx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*40|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*40|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function _x(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function $x(d){d=d|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;o=q;f=c[d+84>>2]|0;if((f|0)<=-1)Bb(15180,14423,1911,15209);p=d+16|0;if(!(c[p>>2]|0))Bb(15246,14423,1912,15209);i=ay(d+60|0,f)|0;if((c[i>>2]|0)!=-2147483648)Bb(15275,14423,1914,15209);if(!(iy(i)|0))Bb(15314,14423,1915,15209);n=c[d+24>>2]|0;f=b[i+4>>1]|0;a:do if(!(c[d>>2]&2)){if(f<<16>>16==181?(b[i+6>>1]|0)==27:0){h=i+8|0;m=i+10|0;f=0;j=0;while(1){i=0;k=f;while(1){r=i+(e[h>>1]|0)+(O(j+(e[m>>1]|0)|0,n)|0)|0;s=a[15426+k>>0]|0;a[(c[p>>2]|0)+r>>0]=(s<<24>>24==46)<<31>>31;a[(c[p>>2]|0)+(r+91)>>0]=(s<<24>>24==88)<<31>>31;i=i+1|0;if((i|0)==90)break;else k=k+1|0}j=j+1|0;if((j|0)==27){j=m;break a}else f=f+90|0}}Bb(15327,14423,1921,15209)}else{if(f<<16>>16==2?(b[i+6>>1]|0)==2:0){h=i+8|0;j=i+10|0;s=(O(n,e[j>>1]|0)|0)+(e[h>>1]|0)|0;r=s+n|0;a[(c[p>>2]|0)+(r+1)>>0]=-1;a[(c[p>>2]|0)+r>>0]=-1;a[(c[p>>2]|0)+(s+1)>>0]=-1;a[(c[p>>2]|0)+s>>0]=-1;break}Bb(17857,14423,1933,15209)}while(0);Ze(o,+g[d+32>>2]*(+(e[h>>1]|0)+.5),+g[d+36>>2]*(+(e[j>>1]|0)+.5));p=o;r=c[p+4>>2]|0;s=d+40|0;c[s>>2]=c[p>>2];c[s+4>>2]=r;l=q;return}function ay(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function by(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+16|0;h=i;if((c[a+24>>2]|0)>0?(c[a+28>>2]|0)>0:0)if(iy(b)|0){k=b+8|0;m=a+32|0;j=b+10|0;a=a+36|0;Ze(h,+g[m>>2]*+(e[k>>1]|0),+g[a>>2]*+(e[j>>1]|0));o=h;n=c[o+4>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;Ze(h,+g[m>>2]*+((e[b+4>>1]|0)+(e[k>>1]|0)|0),+g[a>>2]*+((e[b+6>>1]|0)+(e[j>>1]|0)|0));b=h;d=c[b+4>>2]|0;h=f;c[h>>2]=c[b>>2];c[h+4>>2]=d;l=i;return}else Bb(15163,14423,1615,15146);Bb(15116,14423,1614,15146)}function cy(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=a+16|0;if(c[l>>2]|0){d=0;f=0;while(1){d=Kx(d,e[(dy(l,f)|0)>>1]|0)|0;i=f+1|0;if((i|0)==(c[l>>2]|0))break;else f=i}if((f|0)<65534)o=d;else Bb(15029,14423,2174,15050)}else o=0;m=a+28|0;tx(m);k=a+40|0;Ni(k);n=o+1|0;ey(a,n);if((c[l>>2]|0)>0){d=0;do{j=e[(dy(l,d)|0)>>1]|0;i=c[(dy(l,d)|0)+4>>2]|0;c[(fy(m,j)|0)>>2]=i;b[(pu(k,j)|0)>>1]=d;d=d+1|0}while((d|0)<(c[l>>2]|0))}if(Uw(a,32)|0){if((b[(Xx(l)|0)>>1]|0)!=9)Wx(l,(c[l>>2]|0)+1|0);d=Xx(l)|0;f=d;i=Uw(a,32)|0;j=f+40|0;do{c[f>>2]=c[i>>2];f=f+4|0;i=i+4|0}while((f|0)<(j|0));b[d>>1]=9;j=d+4|0;h=+g[j>>2]*4.0;g[j>>2]=h;g[(fy(m,9)|0)>>2]=h;l=(c[l>>2]|0)+65535&65535;b[(pu(k,e[d>>1]|0)|0)>>1]=l}l=a+52|0;c[l>>2]=0;d=Uw(a,b[a+60>>1]|0)|0;c[l>>2]=d;if(!d)h=0.0;else h=+g[d+4>>2];f=a+56|0;g[f>>2]=h;if((o|0)>=0){d=0;do{if(+g[(fy(m,d)|0)>>2]<0.0){o=c[f>>2]|0;c[(fy(m,d)|0)>>2]=o}d=d+1|0}while((d|0)!=(n|0))}return}function dy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*40|0)|0;else Bb(14314,39072,1118,14323);return 0}function ey(a,d){a=a|0;d=d|0;var e=0,f=0,h=0,i=0;i=l;l=l+16|0;e=i;f=a+28|0;h=c[f>>2]|0;a=a+40|0;if((h|0)!=(c[a>>2]|0))Bb(15067,14423,2215,15106);if((h|0)<(d|0)){g[e>>2]=-1.0;gy(f,d,e);b[e>>1]=-1;hy(a,d,e)}l=i;return}function fy(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function gy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);e=c[a>>2]|0;if((e|0)<(b|0)){f=c[a+8>>2]|0;do{c[f+(e<<2)>>2]=c[d>>2];e=e+1|0}while((e|0)!=(b|0))}c[a>>2]=b;return}function hy(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;if((c[a+4>>2]|0)<(d|0))rv(a,sv(a,d)|0);f=c[a>>2]|0;if((f|0)<(d|0)){g=c[a+8>>2]|0;do{b[g+(f<<1)>>1]=b[e>>1]|0;f=f+1|0}while((f|0)!=(d|0))}c[a>>2]=d;return}function iy(a){a=a|0;return (b[a+8>>1]|0)!=-1|0}function jy(a,b){a=a|0;b=+b;return +(b/+((My((c[a+4>>2]|0)+(c[a+20>>2]|0)+18|0)|0)&65535))}function ky(a){a=a|0;var b=0.0;if(!a)b=0.0;else b=+(1-a|0)/(+(a|0)*2.0);return +b}function ly(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+4>>2]|0;l=c[a+40>>2]|0;h=m+l|0;a=My(h)|0;a:do switch(a<<16>>16){case 0:{if((((My(h+2|0)|0)&65535)+-6|0)>(b|0))e=d[h+6+b>>0]|0;else e=0;break}case 6:{a=(My(h+6|0)|0)&65535;if(a>>>0<=b>>>0?(((My(h+8|0)|0)&65535)+a|0)>>>0>b>>>0:0)e=(My(h+10+(b-a<<1)|0)|0)&65535;else e=0;break}case 2:{Bb(18388,17918,1346,18730);break}case 4:{k=My(h+6|0)|0;j=(k&65535)>>>1;if((b|0)>65535)e=0;else{a=My(h+12|0)|0;e=My(h+10|0)|0;g=m+(l+14)|0;a=a&-2&65535;i=((My(g+a|0)|0)&65535|0)>(b|0);a=l+12+(i?0:a)|0;if(e<<16>>16){f=My(h+8|0)|0;do{f=(f&65535)>>>1;i=f&32766;n=((My(m+a+i|0)|0)&65535|0)<(b|0);a=(n?i:0)+a|0;e=e+-1<<16>>16}while(e<<16>>16!=0)}i=131058-l+2+a&131070;if(((My(g+i|0)|0)&65535|0)<(b|0))Bb(18751,17918,1382,18730);h=h+14|0;g=j&65535;a=(My(h+(k&-2&65535)+2+i|0)|0)&65535;do if((a|0)<=(b|0)){e=g*6|0;f=My(h+e+2+i|0)|0;if(!(f<<16>>16)){a=((_x(h+(g<<2)+2+i|0)|0)&65535)+b&65535;break}else{a=My(m+(f&65535)+(b-a<<1)+l+14+e+2+i|0)|0;break}}else a=0;while(0);e=a&65535}break}default:{j=a<<16>>16==12;if((a&-2)<<16>>16!=12)Bb(18388,17918,1417,18730);i=h+16|0;a=Ny(h+12|0)|0;g=0;while(1){while(1){if((a|0)<=(g|0)){e=0;break a}h=(a-g>>1)+g|0;e=i+(h*12|0)|0;f=Ny(e)|0;if(f>>>0>b>>>0)a=h;else break}if((Ny(e+4|0)|0)>>>0>>0)g=h+1|0;else break}e=Ny(e+8|0)|0;e=e+(j?b-f|0:0)|0}}while(0);return e|0}function my(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[a+4>>2]|0;f=(My(h+(c[a+28>>2]|0)+34|0)|0)&65535;g=(d|0)!=0;if((f|0)>(b|0)){if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(b<<2)+2|0)|0)<<16>>16}else{if(g)c[d>>2]=(_x(h+(c[a+32>>2]|0)+((f<<2)+-4)|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x(h+(c[a+32>>2]|0)+(f<<2)+(b-f<<1)|0)|0)<<16>>16}return}function ny(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;sy(a,b,c,d,e,f,g,h);return}function oy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+24|0;o=p+20|0;j=p+16|0;k=p;m=ry(a,i,j)|0;sy(a,i,g,h,n,o,0,0);c[k+12>>2]=b;c[k>>2]=d;c[k+4>>2]=e;c[k+8>>2]=f;if((d|0)==0|(e|0)==0)a=c[j>>2]|0;else{a=c[j>>2]|0;ty(k,a,m,g,h,c[n>>2]|0,c[o>>2]|0)}Uf(a);l=p;return}function py(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((f|0)>0){n=(e-h|0)<0;o=e+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{i=0;j=0;do{k=b+j|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{i=0;j=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+j|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(e|0))do{k=b+j|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(e|0));m=m+1|0;if((m|0)>=(f|0))break a;else b=b+g|0}Bb(17958,17918,3490,17973)}while(0);l=q;return}function qy(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;p=q;o=p;c[o>>2]=0;c[o+4>>2]=0;a:do if((e|0)>0){n=(f-h|0)<0;o=f+1-h|0;m=0;b:while(1){sca(p|0,0,h|0)|0;switch(h|0){case 2:{if(n){i=0;j=0}else{j=0;i=0;do{k=b+(O(j,g)|0)|0;r=a[k>>0]|0;i=(r&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+2&7)>>0]=r;a[k>>0]=i>>>1;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 3:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+3&7)>>0]=k;a[r>>0]=(i>>>0)/3|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 4:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+4&7)>>0]=k;a[r>>0]=i>>>2;j=j+1|0}while((j|0)!=(o|0));j=o}break}case 5:{if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+5&7)>>0]=k;a[r>>0]=(i>>>0)/5|0;j=j+1|0}while((j|0)!=(o|0));j=o}break}default:if(n){i=0;j=0}else{j=0;i=0;do{r=b+(O(j,g)|0)|0;k=a[r>>0]|0;i=(k&255)-(d[p+(j&7)>>0]|0)+i|0;a[p+(j+h&7)>>0]=k;a[r>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)!=(o|0));j=o}}if((j|0)<(f|0))do{k=b+(O(j,g)|0)|0;if(a[k>>0]|0)break b;i=i-(d[p+(j&7)>>0]|0)|0;a[k>>0]=(i>>>0)/(h>>>0)|0;j=j+1|0}while((j|0)<(f|0));m=m+1|0;if((m|0)>=(e|0))break a;else b=b+1|0}Bb(17887,17918,3552,17939)}while(0);l=q;return}function ry(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a+56>>2]|0))a=lz(a,b,d)|0;else a=mz(a,b,d)|0;return a|0}function sy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=+d;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p+12|0;o=p+8|0;j=p+4|0;k=p;c[n>>2]=0;c[o>>2]=0;m=(f|0)!=0;if(!(Jy(a,b,n,o,j,k)|0)){if(m)c[f>>2]=0;if(g|0)c[g>>2]=0;if(h|0)c[h>>2]=0;if(i|0)c[i>>2]=0}else{if(m)c[f>>2]=~~+A(+(+(c[n>>2]|0)*d+0.0));if(g|0)c[g>>2]=~~+A(+(+(0-(c[k>>2]|0)|0)*e+0.0));if(h|0)c[h>>2]=~~+N(+(+(c[j>>2]|0)*d+0.0));if(i|0)c[i>>2]=~~+N(+(+(0-(c[o>>2]|0)|0)*e+0.0))}l=p;return}function ty(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;b=uy(b,d,.3499999940395355/(e>f?f:e),j,i)|0;if(b|0){j=c[j>>2]|0;vy(a,b,j,c[i>>2]|0,e,f,g,h);Uf(j);Uf(b)}l=k;return}function uy(d,e,f,g,h){d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;c[s>>2]=0;q=f*f;r=(e|0)>0;a:do if(r){i=0;j=0;do{i=i+((a[d+(j*14|0)+12>>0]|0)==1&1)|0;j=j+1|0}while((j|0)!=(e|0));c[h>>2]=i;if(!i)i=0;else{p=vf(i<<2)|0;c[g>>2]=p;if(!p){c[h>>2]=0;i=0;break}else{p=0;m=0;i=0}while(1){if((p|0)==1){i=vf(c[s>>2]<<3)|0;if(!i)break}c[s>>2]=0;if(r){n=0.0;f=0.0;o=0;j=-1;do{k=d+(o*14|0)|0;switch(a[d+(o*14|0)+12>>0]|0){case 1:{if((j|0)>-1)c[(c[g>>2]|0)+(j<<2)>>2]=(c[s>>2]|0)-m;m=c[s>>2]|0;f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);c[s>>2]=m+1;Gy(i,m,f,n);j=j+1|0;break}case 2:{f=+(b[k>>1]|0);n=+(b[d+(o*14|0)+2>>1]|0);k=c[s>>2]|0;c[s>>2]=k+1;Gy(i,k,f,n);break}case 3:{u=d+(o*14|0)+2|0;Hy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}case 4:{u=d+(o*14|0)+2|0;Iy(i,s,f,n,+(b[d+(o*14|0)+4>>1]|0),+(b[d+(o*14|0)+6>>1]|0),+(b[d+(o*14|0)+8>>1]|0),+(b[d+(o*14|0)+10>>1]|0),+(b[k>>1]|0),+(b[u>>1]|0),q,0);n=+(b[u>>1]|0);f=+(b[k>>1]|0);break}default:{}}o=o+1|0}while((o|0)!=(e|0));k=c[s>>2]|0}else{j=-1;k=0}c[(c[g>>2]|0)+(j<<2)>>2]=k-m;if((p|0)<1)p=p+1|0;else break a}Uf(0);Uf(c[g>>2]|0);c[g>>2]=0;c[h>>2]=0;i=0}}else{c[h>>2]=0;i=0}while(0);l=t;return i|0}function vy(a,b,d,e,f,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=j|0;var k=0,l=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;w=-h;m=(e|0)>0;if(m){k=0;l=0;do{k=(c[d+(l<<2)>>2]|0)+k|0;l=l+1|0}while((l|0)!=(e|0));k=(k*20|0)+20|0}else k=20;v=vf(k)|0;if(v|0){if(m){t=0;u=0;k=0;do{r=b+(t<<3)|0;s=d+(u<<2)|0;m=c[s>>2]|0;t=m+t|0;l=m+-1|0;if((m|0)>0){q=0;o=l;p=+g[r+(l<<3)+4>>2];while(1){n=p;p=+g[r+(q<<3)+4>>2];if(!(n==p)){l=v+(k*20|0)+16|0;c[l>>2]=0;h=+g[r+(o<<3)+4>>2];if(h>p){c[l>>2]=1;m=q;l=o;n=h;h=p}else{m=o;l=q;n=p}g[v+(k*20|0)>>2]=+g[r+(l<<3)>>2]*f+0.0;g[v+(k*20|0)+4>>2]=n*w+0.0;g[v+(k*20|0)+8>>2]=+g[r+(m<<3)>>2]*f+0.0;g[v+(k*20|0)+12>>2]=h*w+0.0;k=k+1|0;m=c[s>>2]|0}l=q+1|0;if((l|0)>=(m|0))break;else{o=q;q=l}}}u=u+1|0}while((u|0)!=(e|0))}else k=0;wy(v,k);xy(a,v,k,i,j);Uf(v)}return}function wy(a,b){a=a|0;b=b|0;Ey(a,b);Fy(a,b);return}function xy(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0,m=0,n=0.0,o=0.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;A=l;l=l+544|0;y=A+520|0;v=A+516|0;z=A;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[v>>2]=0;i=c[b>>2]|0;if((i|0)>64){x=vf(i<<3|4)|0;i=c[b>>2]|0}else x=z;t=x+(i<<2)|0;u=b+4|0;s=c[u>>2]|0;g[d+(e*20|0)+4>>2]=+(s+h|0)+1.0;a:do if((s|0)>0){q=t+4|0;r=b+12|0;s=b+8|0;p=0;m=0;b:while(1){o=+(h|0);n=o+1.0;sca(x|0,0,i<<2|0)|0;sca(t|0,0,(c[b>>2]<<2)+4|0)|0;c:do if(m|0){k=v;e=m;while(1){i=e;while(1){if(!(+g[i+24>>2]<=o))break;c[k>>2]=c[i>>2];e=i+16|0;if(!(+g[e>>2]!=0.0)){i=11;break b}g[e>>2]=0.0;yy(y,i);i=c[k>>2]|0;if(!i)break c}e=c[i>>2]|0;if(!e)break;else k=i}}while(0);j=+g[d+4>>2];if(j<=n){i=d;while(1){if(j!=+g[i+12>>2]?(w=zy(y,i,f,o)|0,w|0):0){if(!(+g[w+24>>2]>=o)){i=17;break b}c[w>>2]=c[v>>2];c[v>>2]=w}d=i+20|0;j=+g[i+24>>2];if(!(j<=n))break;else i=d}}i=c[v>>2]|0;if(i|0)Ay(x,q,c[b>>2]|0,i,o);i=c[b>>2]|0;if((i|0)>0){j=0.0;e=0;do{j=j+ +g[t+(e<<2)>>2];i=~~(+B(+(+g[x+(e<<2)>>2]+j))*255.0+.5);a[(c[r>>2]|0)+((O(c[s>>2]|0,p)|0)+e)>>0]=(i|0)<255?i:255;e=e+1|0;i=c[b>>2]|0}while((e|0)<(i|0))}m=c[v>>2]|0;if(m|0){e=m;do{k=e+4|0;g[k>>2]=+g[e+8>>2]+ +g[k>>2];e=c[e>>2]|0}while((e|0)!=0)}p=p+1|0;if((p|0)>=(c[u>>2]|0))break a;else h=h+1|0}if((i|0)==11)Bb(17992,17918,2774,18005);else if((i|0)==17)Bb(18035,17918,2787,18005)}while(0);By(y);if((x|0)!=(z|0))Uf(x);l=A;return}function yy(a,b){a=a|0;b=b|0;a=a+4|0;c[b>>2]=c[a>>2];c[a>>2]=b;return} +function Pe(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Qe(){return l|0}function Re(a){a=a|0;l=a}function Se(a,b){a=a|0;b=b|0;l=a;m=b}function Te(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ue(a){a=a|0;z=a}function Ve(){return z|0}function We(b){b=b|0;var d=0,e=0,f=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;s=l;l=l+16|0;d=s;j=b+4|0;Xe(j);k=b+20|0;Xe(k);m=b+28|0;Xe(m);n=b+52|0;Xe(n);o=b+68|0;Xe(o);p=b+76|0;Xe(p);q=b+84|0;Xe(q);r=b+116|0;Xe(r);e=b+124|0;Xe(e);f=b+132|0;Xe(f);h=b+872|0;i=b+152|0;do{Ye(i);i=i+16|0}while((i|0)!=(h|0));g[b>>2]=1.0;Ze(d,8.0,8.0);t=d;i=c[t+4>>2]|0;h=j;c[h>>2]=c[t>>2];c[h+4>>2]=i;g[b+12>>2]=7.0;g[b+16>>2]=1.0;Ze(d,32.0,32.0);h=d;j=c[h+4>>2]|0;i=k;c[i>>2]=c[h>>2];c[i+4>>2]=j;Ze(d,0.0,.5);i=d;k=c[i+4>>2]|0;j=m;c[j>>2]=c[i>>2];c[j+4>>2]=k;g[b+36>>2]=0.0;g[b+40>>2]=1.0;g[b+44>>2]=0.0;g[b+48>>2]=1.0;Ze(d,4.0,3.0);j=d;m=c[j+4>>2]|0;k=n;c[k>>2]=c[j>>2];c[k+4>>2]=m;g[b+60>>2]=0.0;g[b+64>>2]=0.0;Ze(d,8.0,4.0);k=d;n=c[k+4>>2]|0;m=o;c[m>>2]=c[k>>2];c[m+4>>2]=n;Ze(d,4.0,4.0);m=d;o=c[m+4>>2]|0;n=p;c[n>>2]=c[m>>2];c[n+4>>2]=o;Ze(d,0.0,0.0);n=d;o=c[n+4>>2]|0;p=q;c[p>>2]=c[n>>2];c[p+4>>2]=o;g[b+92>>2]=21.0;g[b+96>>2]=6.0;g[b+100>>2]=16.0;g[b+104>>2]=9.0;g[b+108>>2]=10.0;g[b+112>>2]=0.0;Ze(d,.5,.5);p=d;q=c[p+4>>2]|0;c[r>>2]=c[p>>2];c[r+4>>2]=q;Ze(d,22.0,22.0);r=d;q=c[r+4>>2]|0;p=e;c[p>>2]=c[r>>2];c[p+4>>2]=q;Ze(d,4.0,4.0);p=d;q=c[p+4>>2]|0;r=f;c[r>>2]=c[p>>2];c[r+4>>2]=q;g[b+140>>2]=1.0;a[b+144>>0]=1;a[b+145>>0]=1;g[b+148>>2]=1.25;vv(b);l=s;return}function Xe(a){a=a|0;g[a+4>>2]=0.0;g[a>>2]=0.0;return}function Ye(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;return}function Ze(a,b,c){a=a|0;b=+b;c=+c;g[a>>2]=b;g[a+4>>2]=c;return}function _e(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0;d=l;l=l+16|0;h=d;f=d+8|0;e=a+4|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+12|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+20|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+36|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+44|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+52|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+60|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+68|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+76|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+84|0;af(f,e,b);$e(h,f);i=h;j=c[i+4>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=j;e=a+92|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+96|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+100|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+104|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+108|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+112|0;g[e>>2]=+bf(+g[e>>2]*b);e=a+124|0;af(f,e,b);$e(h,f);j=h;i=c[j+4>>2]|0;c[e>>2]=c[j>>2];c[e+4>>2]=i;e=a+132|0;af(f,e,b);$e(h,f);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;a=a+140|0;g[a>>2]=+bf(+g[a>>2]*b);l=d;return}function $e(a,b){a=a|0;b=b|0;Ze(a,+(~~+g[b>>2]|0),+(~~+g[b+4>>2]|0));return}function af(a,b,c){a=a|0;b=b|0;c=+c;Ze(a,+g[b>>2]*c,+g[b+4>>2]*c);return}function bf(a){a=+a;return +(+(~~a|0))}function cf(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;f=n;Xe(b);h=b+152|0;Xe(h);i=b+160|0;Xe(i);j=b+168|0;Xe(j);k=b+204|0;Xe(k);Xe(b+888|0);m=b+896|0;Xe(m);e=b+944|0;d=b+904|0;do{Xe(d);d=d+8|0}while((d|0)!=(e|0));d=b+1064|0;e=b+1024|0;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));sca(b|0,0,5348)|0;Ze(f,-1.0,-1.0);o=f;e=c[o+4>>2]|0;d=b;c[d>>2]=c[o>>2];c[d+4>>2]=e;g[b+8>>2]=.01666666753590107;g[b+12>>2]=5.0;c[b+16>>2]=4974;c[b+20>>2]=4984;c[b+24>>2]=0;g[b+28>>2]=.30000001192092896;g[b+32>>2]=6.0;d=b+40|0;e=d+84|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));g[b+124>>2]=.25;g[b+128>>2]=.05000000074505806;c[b+132>>2]=0;c[b+136>>2]=0;g[b+140>>2]=1.0;c[b+148>>2]=0;a[b+144>>0]=0;Ze(f,1.0,1.0);e=f;d=c[e+4>>2]|0;o=h;c[o>>2]=c[e>>2];c[o+4>>2]=d;Ze(f,0.0,0.0);o=f;h=c[o>>2]|0;o=c[o+4>>2]|0;d=j;c[d>>2]=h;c[d+4>>2]=o;d=i;c[d>>2]=h;c[d+4>>2]=o;a[b+176>>0]=0;a[b+177>>0]=1;c[b+180>>2]=0;c[b+184>>2]=2;c[b+188>>2]=1;c[b+192>>2]=0;c[b+196>>2]=2;c[b+200>>2]=0;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);d=f;o=c[d+4>>2]|0;c[k>>2]=c[d>>2];c[k+4>>2]=o;Ze(f,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);k=f;o=c[k+4>>2]|0;d=m;c[d>>2]=c[k>>2];c[d+4>>2]=o;g[b+36>>2]=6.0;d=0;do{g[b+1004+(d<<2)>>2]=-1.0;g[b+984+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=5);d=0;do{g[b+3132+(d<<2)>>2]=-1.0;g[b+1084+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=512);d=0;do{g[b+5180+(d<<2)>>2]=-1.0;d=d+1|0}while((d|0)!=21);l=n;return}function df(a){a=a|0;a=(c[11106]|0)+10572|0;if(Lu(a)|0)a=0;else a=Lo(a)|0;return a|0}function ef(b,d){b=b|0;d=d|0;var e=0;e=(c[11106]|0)+10572|0;Mi(e);b=v9(d)|0;jg(e,b+1|0);qca(kg(e,0)|0,d|0,b|0)|0;a[(kg(e,b)|0)>>0]=0;return}function ff(a,b){a=a|0;b=b|0;return}function gf(a,c){a=a|0;c=c|0;var d=0;d=hf(a+746|0)|0;if((d|0)<16){b[a+746+(d<<1)>>1]=c;b[a+746+(d+1<<1)>>1]=0}return}function hf(a){a=a|0;var c=0;if(!(b[a>>1]|0))a=0;else{c=a;a=0;do{c=c+2|0;a=a+1|0}while((b[c>>1]|0)!=0)}return a|0}function jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;j=d+(e<<1)+-2|0;a:do if(j>>>0>d>>>0){k=(g|0)==0;e=d;while(1){if(!(k|f>>>0>>0))break a;if(!(a[f>>0]|0))break a;f=f+(Bf(m,f,g)|0)|0;i=c[m>>2]|0;if(!i)break;if(i>>>0<65536){b[e>>1]=i;e=e+2|0}if(e>>>0>=j>>>0)break a}}else e=d;while(0);b[e>>1]=0;if(h|0)c[h>>2]=f;l=n;return e-d>>1|0}function kf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;m=k+16|0;i=k+8|0;j=k;lf(m,e,b);lf(i,d,b);h=+g[i>>2];e=i+4|0;f=+g[e>>2];f=+C(+(h*h+f*f));mf(i,1.0/f);h=+g[m>>2]*+g[i>>2]+ +g[m+4>>2]*+g[e>>2];do if(!(h<0.0))if(h>f){i=d;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j;break}else{af(j,i,h);nf(a,b,j);break}else{i=b;j=c[i+4>>2]|0;m=a;c[m>>2]=c[i>>2];c[m+4>>2]=j}while(0);l=k;return}function lf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]-+g[c>>2],+g[b+4>>2]-+g[c+4>>2]);return}function mf(a,b){a=a|0;b=+b;g[a>>2]=+g[a>>2]*b;a=a+4|0;g[a>>2]=+g[a>>2]*b;return}function nf(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]+ +g[c>>2],+g[b+4>>2]+ +g[c+4>>2]);return}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;j=+g[d>>2];l=+g[b>>2];k=+g[a+4>>2];m=+g[b+4>>2];i=+g[d+4>>2];f=+g[a>>2];h=+g[c>>2];e=+g[c+4>>2];b=(j-h)*(m-e)-(l-h)*(i-e)<0.0;if((j-l)*(k-m)-(i-m)*(f-l)<0.0^b)b=0;else b=b^(j-f)*(e-k)-(i-k)*(h-f)<0.0^1;return b|0}function pf(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;i=l;l=l+32|0;s=i+16|0;t=i+8|0;r=i;lf(s,b,a);lf(t,c,a);lf(r,d,a);n=+g[s>>2];q=+g[t+4>>2];p=+g[t>>2];k=+g[s+4>>2];j=n*q-p*k;m=+g[r>>2];o=+g[r+4>>2];g[f>>2]=(q*m-p*o)/j;j=(o*n-m*k)/j;g[h>>2]=j;g[e>>2]=1.0-+g[f>>2]-j;l=i;return}function qf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;o=m+24|0;kf(i,b,d,f);kf(j,d,e,f);kf(k,e,b,f);lf(o,f,i);n=+rf(o);lf(o,f,j);h=+rf(o);lf(o,f,k);g=+sf(n,+sf(h,+rf(o)));do if(!(g==n))if(g==h){k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=k;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k;break}else{j=i;k=c[j+4>>2]|0;o=a;c[o>>2]=c[j>>2];c[o+4>>2]=k}while(0);l=m;return}function rf(a){a=a|0;var b=0.0,c=0.0;c=+g[a>>2];b=+g[a+4>>2];return +(c*c+b*b)}function sf(a,b){a=+a;b=+b;return +(a>0]=0}return}function uf(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=vf(c)|0;qca(b|0,a|0,c|0)|0;return b|0}function vf(a){a=a|0;c[11363]=(c[11363]|0)+1;return us(a,0)|0}function wf(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(b>>>0>>0)while(1){if((a[b>>0]|0)==d<<24>>24)break a;b=b+1|0;if(b>>>0>=c>>>0){b=0;break}}else b=0;while(0);return b|0}function xf(a,c){a=a|0;c=c|0;var d=0;while(1){if(a>>>0<=c>>>0)break;d=a+-2|0;if((b[d>>1]|0)==10)break;else a=d}return a|0}function yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=N9(b,d,e,h)|0;e=(f|0)!=-1&(f|0)<(d|0)?f:d+-1|0;if(!b)e=f;else a[b+e>>0]=0;l=g;return e|0}function zf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;e=N9(b,c,d,e)|0;d=(e|0)!=-1&(e|0)<(c|0)?e:c+-1|0;if(!b)d=e;else a[b+d>>0]=0;return d|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!(c[11108]|0)){i=0;do{g=0;h=i;do{h=0-(h&1)&-306674912^h>>>1;g=g+1|0}while((g|0)!=8);c[44428+(i<<2)>>2]=h;i=i+1|0}while((i|0)!=256)}g=~f;if((e|0)<=0){h=a[b>>0]|0;if(h<<24>>24){e=g;while(1){i=b;b=b+1|0;f=a[b>>0]|0;if(h<<24>>24==35&f<<24>>24==35){e=(a[i+2>>0]|0)==35?g:e;f=35}e=e>>>8^c[44428+((e&255^h&255)<<2)>>2];if(!(f<<24>>24)){g=e;break}else h=f}}}else{h=b;while(1){e=e+-1|0;g=c[44428+((g&255^d[h>>0])<<2)>>2]^g>>>8;if(!e)break;else h=h+1|0}}return ~g|0}function Bf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=d[e>>0]|0;a:do if(g&128){if((g&224|0)==192){c[b>>2]=65533;if(f|0?(f-e|0)<2:0){f=1;break}g=a[e>>0]|0;if((g&255)<194){f=2;break}f=d[e+1>>0]|0;if((f&192|0)!=128){f=2;break}c[b>>2]=f&63|(g&31)<<6;f=2;break}if((g&240|0)==224){c[b>>2]=65533;if(f|0?(f-e|0)<3:0){f=1;break}h=a[e>>0]|0;switch(h<<24>>24){case -32:{if((a[e+1>>0]&-32)<<24>>24==-96)k=14;else{f=3;break a}break}case -19:{f=a[e+1>>0]|0;if((f&255)>159){f=3;break a}break}default:k=14}if((k|0)==14)f=a[e+1>>0]|0;g=f&255;if((g&192|0)!=128){f=3;break}f=d[e+2>>0]|0;if((f&192|0)!=128){f=3;break}c[b>>2]=f&63|g<<6&4032|(h&15)<<12;f=3;break}if((g&248|0)!=240){c[b>>2]=0;f=0;break}c[b>>2]=65533;if(f|0?(f-e|0)<4:0){f=1;break}g=a[e>>0]|0;if((g&255)<=244){switch(g<<24>>24){case -16:{if(((a[e+1>>0]|0)+112&255)>47){f=4;break a}else k=25;break}case -12:{f=a[e+1>>0]|0;if((f&255)>143){f=4;break a}break}default:k=25}if((k|0)==25)f=a[e+1>>0]|0;f=f&255;if((((f&192|0)==128?(h=d[e+2>>0]|0,(h&192|0)==128):0)?(i=d[e+3>>0]|0,(i&192|0)==128):0)?(j=h<<6&4032|f<<12&258048|(g&7)<<18,(j&2095104|0)!=55296):0){c[b>>2]=j|i&63;f=4}else f=4}else f=4}else{c[b>>2]=g;f=1}while(0);return f|0}function Cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(d|0)==0;f=0;while(1){if(!(h|b>>>0>>0))break;if(!(a[b>>0]|0))break;b=b+(Bf(g,b,d)|0)|0;e=c[g>>2]|0;if(!e)break;else f=f+(e>>>0<65536&1)|0}l=i;return f|0}function Df(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;d=c+d|0;i=d+-1|0;a:do if(i>>>0>c>>>0){j=(f|0)==0;h=d+-1|0;d=c;while(1){if(!(j|e>>>0>>0))break a;g=b[e>>1]|0;if(!(g<<16>>16))break a;if((g&65535)<128){a[d>>0]=g;d=d+1|0}else d=d+(Ef(d,h-d|0,g&65535)|0)|0;if(d>>>0>>0)e=e+2|0;else break}}else d=c;while(0);a[d>>0]=0;return d-c|0}function Ef(b,c,d){b=b|0;c=c|0;d=d|0;a:do if(d>>>0<128){a[b>>0]=d;b=1}else{if(d>>>0<2048){if((c|0)<2){b=0;break}a[b>>0]=(d>>>6)+192;a[b+1>>0]=d&63|128;b=2;break}switch(d&-1024|0){case 56320:{b=0;break a}case 55296:{if((c|0)<4){b=0;break a}a[b>>0]=(d>>>18)+240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break a}default:{if((c|0)<3){b=0;break a}a[b>>0]=(d>>>12)+224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break a}}}while(0);return b|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=(c|0)==0;a:do if(f|a>>>0>>0){d=0;do{e=b[a>>1]|0;if(!(e<<16>>16))break a;a=a+2|0;if((e&65535)<128)e=1;else e=Gf(e&65535)|0;d=e+d|0}while(f|a>>>0>>0)}else d=0;while(0);return d|0}function Gf(a){a=a|0;if(a>>>0>=128)if(a>>>0<2048)a=2;else{a=a&-1024;return ((a|0)==56320?0:(a|0)==55296?4:3)|0}else a=1;return a|0}function Hf(a,b){a=a|0;b=b|0;If(a,+((b&255)>>>0)*.003921568859368563,+((b>>>8&255)>>>0)*.003921568859368563,+((b>>>16&255)>>>0)*.003921568859368563,+(b>>>24>>>0)*.003921568859368563);return}function If(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;g[a>>2]=b;g[a+4>>2]=c;g[a+8>>2]=d;g[a+12>>2]=e;return}function Jf(a){a=a|0;var b=0;b=~~(+Kf(+g[a>>2])*255.0+.5);b=~~(+Kf(+g[a+4>>2])*255.0+.5)<<8|b;b=b|~~(+Kf(+g[a+8>>2])*255.0+.5)<<16;return b|~~(+Kf(+g[a+12>>2])*255.0+.5)<<24|0}function Kf(a){a=+a;return +(a<0.0?0.0:a>1.0?1.0:a)}function Lf(a,b){a=a|0;b=+b;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[11106]|0;a=f+5504+(a<<4)|0;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];a=e+12|0;g[a>>2]=+g[a>>2]*(+g[f+5352>>2]*b);a=Jf(e)|0;l=d;return a|0}function Mf(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=c[11106]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];a=d+12|0;g[a>>2]=+g[e+5352>>2]*+g[a>>2];a=Jf(d)|0;l=b;return a|0}function Nf(a){a=a|0;return (c[11106]|0)+5504+(a<<4)|0}function Of(a){a=a|0;var b=0.0;b=+g[(c[11106]|0)+5352>>2];return (!(b>=1.0)?~~(b*+(a>>>24|0))<<24|a&16777215:a)|0}function Pf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0.0,n=0.0;k=l;l=l+16|0;i=k+8|0;h=k+4|0;j=k;g[i>>2]=a;g[h>>2]=b;g[j>>2]=c;if(b>2]}else c=0.0;if(b>a){Qf(i,h);c=-.3333333432674408-c;b=+g[h>>2];a=+g[i>>2]}n=+g[j>>2];m=a-(b>2]=+B(+(c+(b-n)/(m*6.0+9.999999682655225e-21)));g[e>>2]=m/(a+9.999999682655225e-21);g[f>>2]=a;l=k;return}function Qf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function Rf(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0.0,k=0;if(b==0.0){g[f>>2]=c;g[e>>2]=c;g[d>>2]=c}else{i=+Baa(a,1.0)/.1666666716337204;k=~~i;i=i-+(k|0);a=(1.0-b)*c;j=(1.0-i*b)*c;b=(1.0-(1.0-i)*b)*c;switch(k|0){case 0:{h=a;i=b;a=c;break}case 1:{h=a;i=c;a=j;break}case 2:{h=b;i=c;break}case 3:{h=c;i=j;break}case 4:{h=c;i=a;a=b;break}default:{h=j;i=a;a=c}}g[d>>2]=a;g[e>>2]=i;g[f>>2]=h}return}function Sf(a,b){a=a|0;b=b|0;return Paa(a,b)|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!((a|0)!=0&(b|0)!=0))Bb(4998,5025,1445,5041);g=(d|0)!=0;if(g)c[d>>2]=0;b=Sf(a,b)|0;do if(!b)a=0;else{if(((Zaa(b,0,2)|0)==0?(f=eba(b)|0,(f|0)!=-1):0)?(Zaa(b,0,0)|0)==0:0){a=vf(f+e|0)|0;if(!a){Daa(b)|0;a=0;break}if((bba(a,1,f,b)|0)!=(f|0)){Daa(b)|0;Uf(a);a=0;break}if((e|0)>0)sca(a+f|0,0,e|0)|0;Daa(b)|0;if(!g)break;c[d>>2]=f;break}Daa(b)|0;a=0}while(0);return a|0}function Uf(a){a=a|0;if(a|0)c[11363]=(c[11363]|0)+-1;vs(a,0);return}function Vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Wf(a,b)|0;if((e|0)!=(Xf(a)|0)?(c[e>>2]|0)==(b|0):0)d=c[e+4>>2]|0;return d|0}function Wf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=Tr(a)|0;a=(Zf(a)|0)-d>>3;if(a)do{g=a>>>1;e=d+(g<<3)|0;f=(c[e>>2]|0)>>>0>>0;a=f?a+-1-g|0:g;d=f?e+8|0:d}while((a|0)!=0);return d|0}function Xf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function Yf(a,b){a=a|0;b=b|0;var d=0;d=Wf(a,b)|0;if((d|0)!=(Xf(a)|0)?(c[d>>2]|0)==(b|0):0)a=c[d+4>>2]|0;else a=0;return a|0}function Zf(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<3)|0}function _f(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=a+8|0;f=c[g>>2]|0;if(f>>>0<=b>>>0?(e=c[a>>2]|0,(f+(e<<3)|0)>>>0>=b>>>0):0){b=b-f>>3;if((e|0)==(c[a+4>>2]|0)){Wu(a,Xu(a,e+1|0)|0);e=c[a>>2]|0}if((e|0)>(b|0)){f=(c[g>>2]|0)+(b<<3)|0;rca(f+8|0,f|0,e-b<<3|0)|0}e=d;f=c[e+4>>2]|0;d=(c[g>>2]|0)+(b<<3)|0;c[d>>2]=c[e>>2];c[d+4>>2]=f;c[a>>2]=(c[a>>2]|0)+1;return (c[g>>2]|0)+(b<<3)|0}Bb(12910,39072,1154,12940);return 0}function $f(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function bg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{$f(e,b,d);_f(a,f,e)|0}l=g;return}function cg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=Wf(a,b)|0;if((f|0)!=(Zf(a)|0)?(c[f>>2]|0)==(b|0):0)c[f+4>>2]=d;else{ag(e,b,d);_f(a,f,e)|0}l=g;return}function dg(a){a=a|0;Cb(a|0)|0;Lba()}function eg(a){a=+a;var b=0,c=0;b=Zi()|0;if(a==0.0)a=+g[b+536>>2];c=b+376|0;g[c>>2]=a;Xl(b+396|0,c);return}function fg(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;h=l;l=l+16|0;g=h;if(!(d&1048576)){Ze(g,0.0,0.0);g=Jo(a,b,c,g,d,e,f)|0;l=h;return g|0}else Bb(9328,5025,10393,34002);return 0}function gg(){var a=0,b=0;b=Zi()|0;a=b+396|0;$l(a);if(am(a)|0)a=b+536|0;else a=_l(a)|0;c[b+376>>2]=c[a>>2];return}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;c[h>>2]=c[d>>2];e=zf(0,0,b,d)|0;if((e|0)>=1){f=c[a>>2]|0;g=f+e|0;j=c[a+4>>2]|0;d=j<<1;if((g|0)>=(j|0))ig(a,(g|0)>(d|0)?g:d);jg(a,g);zf(kg(a,f+-1|0)|0,e+1|0,b,h)|0}l=i;return}function ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+4|0;if((c[e>>2]|0)<(b|0)){f=vf(b)|0;g=a+8|0;d=c[g>>2]|0;if(!d)a=0;else{qca(f|0,d|0,c[a>>2]|0)|0;a=c[g>>2]|0}Uf(a);c[g>>2]=f;c[e>>2]=b}return}function jg(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ig(a,it(a,b)|0);c[a>>2]=b;return}function kg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+b|0;else Bb(14314,39072,1118,14323);return 0}function lg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;hg(a,b,f);l=e;return}function mg(a){a=a|0;var b=0;b=a+48|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function ng(a,b,d,e){a=a|0;b=b|0;d=+d;e=e|0;var f=0,h=0;if((c[a>>2]|0)>=5)Bb(5060,5025,1786,5103);c[a>>2]=b;g[a+12>>2]=0.0;f=a+8|0;g[f>>2]=0.0;h=a+4|0;g[h>>2]=d;if(e){e=a+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0}if((b|0)>0){b=0;do{e=a+32+(b<<2)|0;if((b|0)>0?+g[e>>2]>0.0:0)g[f>>2]=+g[h>>2]+ +g[f>>2];g[a+16+(b<<2)>>2]=+(~~+g[f>>2]|0);g[f>>2]=+g[e>>2]+ +g[f>>2];g[e>>2]=0.0;b=b+1|0}while((b|0)<(c[a>>2]|0))}return}function og(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;var e=0,f=0,h=0,i=0;i=a+12|0;g[i>>2]=0.0;h=a+32|0;b=+pg(+g[h>>2],b);g[h>>2]=b;h=a+36|0;g[h>>2]=+pg(+g[h>>2],c);h=a+40|0;g[h>>2]=+pg(+g[h>>2],d);h=a+4|0;f=0;d=b;b=0.0;while(1){if((f|0)>0&d>0.0)c=+g[h>>2];else c=0.0;b=b+(d+c);g[i>>2]=b;e=f+1|0;if((e|0)==3)break;f=e;d=+g[a+32+(e<<2)>>2]}return +(+pg(+g[a+8>>2],b))}function pg(a,b){a=+a;b=+b;return +(a>=b?a:b)}function qg(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[a>>2]=+rg();h=a+4|0;g[h>>2]=d;c[a+8>>2]=b;i=a+12|0;c[i>>2]=0;e=a+16|0;c[e>>2]=-1;f=a+20|0;c[f>>2]=-1;if(d>0.0){sg(b,d,e,f);b=c[e>>2]|0;if((b|0)>0){d=+g[h>>2];tg(+g[a>>2]+d*+(b|0),d)}c[i>>2]=2}return}function rg(){var a=0;a=wg()|0;return +(+g[a+224>>2]-+g[a+24>>2]+ +g[a+112>>2])}function sg(b,d,e,f){b=b|0;d=+d;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0;j=c[11106]|0;i=c[j+6436>>2]|0;do if(!(a[j+10628>>0]|0)){if(a[i+149>>0]|0){c[f>>2]=0;c[e>>2]=0;break}k=+g[i+224>>2];h=~~((+g[i+488>>2]-k)/d);i=~~((+g[i+496>>2]-k)/d);if(a[j+6777>>0]|0){j=c[j+6784>>2]|0;i=((j|0)==3&1)+i|0;h=(((j|0)==2)<<31>>31)+h|0}j=Fj(h,0,b)|0;b=Fj(i+1|0,j,b)|0;c[e>>2]=j;c[f>>2]=b}else{c[e>>2]=0;c[f>>2]=b}while(0);return}function tg(a,b){a=+a;b=+b;var d=0;pn(a);d=Zi()|0;a=+g[d+224>>2];g[d+232>>2]=a-b;g[d+260>>2]=b-+g[(c[11106]|0)+5424>>2];d=c[d+468>>2]|0;if(d|0)g[d+36>>2]=a;return}function ug(a){a=a|0;var b=0,d=0,e=0.0;b=a+8|0;d=c[b>>2]|0;if((d|0)>=0){if((d|0)!=2147483647){e=+g[a+4>>2];tg(+g[a>>2]+e*+(d|0),e)}c[b>>2]=-1;c[a+12>>2]=3}return}function vg(b){b=b|0;var d=0,e=0,f=0.0,h=0,i=0;e=b+8|0;a:do if((c[e>>2]|0)!=0?(a[(wg()|0)+149>>0]|0)==0:0){h=b+12|0;switch(c[h>>2]|0){case 0:{c[b+16>>2]=0;c[b+20>>2]=1;g[b>>2]=+rg();c[h>>2]=1;d=1;break a}case 1:{if((c[e>>2]|0)==1){c[e>>2]=-1;d=0;break a}f=+rg()-+g[b>>2];if(f>0.0){qg(b,(c[e>>2]|0)+-1|0,f);d=b+16|0;c[d>>2]=(c[d>>2]|0)+1;d=b+20|0;c[d>>2]=(c[d>>2]|0)+1;c[h>>2]=3;d=1;break a}else Bb(5110,5025,1882,39251);break}case 2:{if((c[b+16>>2]|0)>-1?(c[b+20>>2]|0)>-1:0){c[h>>2]=3;d=1;break a}Bb(5130,5025,1891,39251);break}case 3:{ug(b);d=0;break a}default:{d=0;break a}}}else i=3;while(0);if((i|0)==3){c[e>>2]=-1;d=0}return d|0}function wg(){return c[(c[11106]|0)+6436>>2]|0}function xg(b,d,e){b=b|0;d=d|0;e=e|0;var f=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,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;f=A;u=A+16|0;v=b+12|0;Xe(v);w=b+20|0;Xe(w);x=b+28|0;Xe(x);y=b+36|0;Xe(y);Xe(b+44|0);z=b+52|0;Xe(z);h=b+60|0;Xe(h);yg(b+68|0);i=b+84|0;Xe(i);j=b+108|0;Xe(j);k=b+116|0;Xe(k);m=b+124|0;Xe(m);n=b+136|0;Xe(n);o=b+204|0;Xe(o);p=b+212|0;Xe(p);zg(b+220|0);q=b+472|0;Ag(q);yg(b+484|0);yg(b+500|0);yg(b+516|0);mg(b+540|0);Bg(b+588|0);Cg(b+600|0);r=b+652|0;s=b+684|0;t=r;do{yg(t);t=t+16|0}while((t|0)!=(s|0));c[b>>2]=uf(e)|0;t=b+4|0;c[t>>2]=Af(e,0,0)|0;Dg(q,t);c[b+8>>2]=0;Ze(f,0.0,0.0);t=f;s=c[t>>2]|0;t=c[t+4>>2]|0;c[w>>2]=s;c[w+4>>2]=t;w=v;c[w>>2]=s;c[w+4>>2]=t;Ze(f,0.0,0.0);w=f;v=c[w>>2]|0;w=c[w+4>>2]|0;c[y>>2]=v;c[y+4>>2]=w;c[x>>2]=v;c[x+4>>2]=w;Ze(f,0.0,0.0);x=f;y=c[x>>2]|0;x=c[x+4>>2]|0;w=h;c[w>>2]=y;c[w+4>>2]=x;c[z>>2]=y;c[z+4>>2]=x;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=i;c[y>>2]=c[z>>2];c[y+4>>2]=x;g[b+92>>2]=0.0;g[b+96>>2]=0.0;c[b+100>>2]=Eg(b,5167,0)|0;c[b+104>>2]=0;Ze(f,0.0,0.0);y=f;x=c[y+4>>2]|0;z=j;c[z>>2]=c[y>>2];c[z+4>>2]=x;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);z=f;x=c[z+4>>2]|0;y=k;c[y>>2]=c[z>>2];c[y+4>>2]=x;Ze(f,.5,.5);y=f;x=c[y+4>>2]|0;z=m;c[z>>2]=c[y>>2];c[z+4>>2]=x;a[b+133>>0]=0;a[b+132>>0]=0;Ze(f,0.0,0.0);z=f;x=c[z+4>>2]|0;y=n;c[y>>2]=c[z>>2];c[y+4>>2]=x;y=b+144|0;c[y>>2]=0;c[y+4>>2]=0;c[b+152>>2]=-1;c[b+156>>2]=-1;c[b+160>>2]=0;c[b+164>>2]=0;c[b+172>>2]=-1;c[b+168>>2]=-1;a[b+176>>0]=0;c[b+180>>2]=0;c[b+184>>2]=-1;c[b+188>>2]=0;c[b+200>>2]=15;c[b+196>>2]=15;c[b+192>>2]=15;Ze(f,3402823466385288598117041.0e14,3402823466385288598117041.0e14);y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;z=p;c[z>>2]=x;c[z+4>>2]=y;z=o;c[z>>2]=x;c[z+4>>2]=y;c[b+532>>2]=-1;g[b+536>>2]=0.0;g[b+612>>2]=1.0;z=vf(116)|0;a[f>>0]=a[u>>0]|0;z=Fg(116,f,z)|0;Gg(z,d+6236|0);c[b+616>>2]=z;c[z+44>>2]=c[b>>2];z=b+620|0;c[b+648>>2]=0;c[b+644>>2]=0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;yg(f);z=b+668|0;c[z>>2]=c[f>>2];c[z+4>>2]=c[f+4>>2];c[z+8>>2]=c[f+8>>2];c[z+12>>2]=c[f+12>>2];c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[b+640>>2]=0;c[b+688>>2]=-1;c[b+684>>2]=-1;c[b+696>>2]=2147483647;c[b+692>>2]=2147483647;c[b+704>>2]=2147483647;c[b+700>>2]=2147483647;l=A;return}function yg(a){a=a|0;Ze(a,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(a+8|0,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14);return}function zg(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+16|0;f=e;Xe(b);i=b+8|0;Xe(i);m=b+16|0;Xe(m);n=b+24|0;Xe(n);d=b+68|0;yg(d);h=b+84|0;yg(h);Ur(b+128|0);Vr(b+164|0);Wr(b+176|0);Wr(b+188|0);Xr(b+200|0);Ze(f,0.0,0.0);j=f;k=c[j>>2]|0;j=c[j+4>>2]|0;c[n>>2]=k;c[n+4>>2]=j;c[m>>2]=k;c[m+4>>2]=j;c[i>>2]=k;c[i+4>>2]=j;i=b;c[i>>2]=k;c[i+4>>2]=j;i=b+32|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;g[b+48>>2]=-1.0;i=b+52|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;yg(f);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];a[b+100>>0]=0;a[b+101>>0]=0;c[b+116>>2]=0;c[b+112>>2]=0;c[b+104>>2]=0;c[b+108>>2]=1;a[b+120>>0]=0;g[b+124>>2]=0.0;c[b+140>>2]=0;c[b+148>>2]=0;c[b+144>>2]=0;g[b+156>>2]=0.0;c[b+152>>2]=1;g[b+160>>2]=-1.0;b=b+212|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));l=e;return}function Ag(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Bg(a){a=a|0;as(a);return}function Cg(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Dg(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Yu(a,Zu(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Eg(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;d=Af(b,(d|0)==0?0:d-b|0,a)|0;Sg(d);return d|0}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;return c|0}function Gg(a,b){a=a|0;b=b|0;bs(a);cs(a+12|0);ds(a+24|0);es(a+60|0);fs(a+72|0);gs(a+84|0);hs(a+104|0);c[a+40>>2]=b;c[a+44>>2]=0;yv(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ig(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Jg(a){a=a|0;ps(a);return}function Kg(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Lg(a){a=a|0;Yr(a+200|0);Zr(a+188|0);Zr(a+176|0);_r(a+164|0);$r(a+128|0);return}function Mg(a){a=a|0;var b=0,d=0;Ng(a+616|0);Og(a);d=a+600|0;if(c[d>>2]|0){b=0;do{Qg(Pg(d,b)|0);b=b+1|0}while((b|0)!=(c[d>>2]|0))}Ig(d);Jg(a+588|0);Kg(a+472|0);Lg(a+220|0);return}function Ng(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Ps(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Og(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Uf(b);c[a>>2]=0}return}function Pg(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*56|0)|0;else Bb(14314,39072,1118,14323);return 0}function Qg(a){a=a|0;qs(a+44|0);return}function Rg(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function Sg(b){b=b|0;var d=0;d=c[11106]|0;if((c[d+6464>>2]|0)==(b|0))a[d+6476>>0]=1;return}function Tg(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Af(e,4,c[(Rg(a+472|0)|0)>>2]|0)|0;Sg(b);l=d;return b|0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;a=c[(Rg(a+472|0)|0)>>2]|0;return Af(b,(d|0)==0?0:d-b|0,a)|0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0.0,i=0.0;d=l;l=l+16|0;f=d;e=c[(Rg(a+472|0)|0)>>2]|0;i=+g[a+20>>2];c[f>>2]=~~(+g[b>>2]-i);h=+g[a+24>>2];c[f+4>>2]=~~(+g[b+4>>2]-h);c[f+8>>2]=~~(+g[b+8>>2]-i);c[f+12>>2]=~~(+g[b+12>>2]-h);b=Af(f,16,e)|0;Sg(b);l=d;return b|0}function Wg(b,d){b=b|0;d=d|0;var e=0,f=0,h=0;f=c[11106]|0;e=f+6464|0;h=(c[e>>2]|0)!=(b|0);a[f+6477>>0]=h&1;if(h)g[f+6472>>2]=0.0;c[e>>2]=b;c[f+6480>>2]=0;a[f+6478>>0]=0;c[f+6492>>2]=d;if(b|0){a[f+6476>>0]=1;if(((c[f+6672>>2]|0)!=(b|0)?(c[f+6684>>2]|0)!=(b|0):0)?(c[f+6688>>2]|0)!=(b|0):0)b=(c[f+6696>>2]|0)==(b|0)?2:1;else b=2;c[f+6496>>2]=b}return}function Xg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;e=k+16|0;f=k+8|0;g=k;h=c[11106]|0;if(!b)Bb(5173,5025,2060,5181);i=c[d+324>>2]|0;j=h+6664|0;if((c[j>>2]|0)!=(d|0))a[h+6753>>0]=0;c[h+6668>>2]=b;c[j>>2]=d;c[h+6740>>2]=i;c[d+644+(i<<2)>>2]=b;if((c[d+280>>2]|0)==(b|0)){j=d+20|0;lf(f,d+288|0,j);lf(g,d+296|0,j);Yg(e,f,g);j=d+652+(i<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2]}if((c[h+6496>>2]|0)==2)a[h+6751>>0]=1;else a[h+6750>>0]=1;l=k;return}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=b;b=c[f+4>>2]|0;e=a;c[e>>2]=c[f>>2];c[e+4>>2]=b;e=d;b=c[e+4>>2]|0;d=a+8|0;c[d>>2]=c[e>>2];c[d+4>>2]=b;return}function Zg(){Wg(0,0);return}function _g(b){b=b|0;var d=0.0,e=0;e=c[11106]|0;c[e+6448>>2]=b;a[e+6452>>0]=0;if((b|0)!=0?(c[e+6456>>2]|0)==(b|0):0)d=+g[e+6460>>2]+ +g[e+12>>2];else d=0.0;g[e+6460>>2]=d;return}function $g(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;e=i;f=c[11106]|0;h=c[f+6436>>2]|0;if((a[h+149>>0]|0)==0?(q=h+220|0,k=h+252|0,n=+pg(+g[k>>2],+g[b+4>>2]),m=h+256|0,d=+pg(+g[m>>2],d),p=h+224|0,Ze(e,+g[q>>2]+ +g[b>>2],+g[p>>2]),o=h+228|0,s=e,r=c[s+4>>2]|0,b=o,c[b>>2]=c[s>>2],c[b+4>>2]=r,b=f+5424|0,Ze(e,+(~~(+g[h+20>>2]+ +g[h+456>>2]+ +g[h+464>>2])|0),+(~~(n+ +g[p>>2]+ +g[b>>2])|0)),p=e,e=c[p+4>>2]|0,f=q,c[f>>2]=c[p>>2],c[f+4>>2]=e,f=h+244|0,g[f>>2]=+pg(+g[f>>2],+g[o>>2]),f=h+248|0,g[f>>2]=+pg(+g[f>>2],(c[j>>2]=e,+g[j>>2])-+g[b>>2]),g[h+260>>2]=n,g[h+264>>2]=d,g[m>>2]=0.0,g[k>>2]=0.0,(c[h+364>>2]|0)==1):0)ah(0.0,-1.0);l=i;return}function ah(b,d){b=+b;d=+d;var e=0.0,f=0,h=0,i=0;i=Zi()|0;if(!(a[i+149>>0]|0)){f=c[11106]|0;h=d<0.0;if(b!=0.0){e=+g[i+464>>2];b=+g[i+460>>2]+((h?0.0:d)+(+g[i+20>>2]-+g[i+108>>2]+b))}else{if(h)e=+g[f+5420>>2];else e=d;b=+g[i+228>>2]}g[i+220>>2]=e+b;c[i+224>>2]=c[i+232>>2];c[i+252>>2]=c[i+260>>2];c[i+256>>2]=c[i+264>>2]}return}function bh(a,b){a=a|0;b=+b;var c=0,d=0;c=l;l=l+16|0;d=c;ch(d,a);$g(d,b);l=c;return}function ch(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2]-+g[b>>2],+g[b+12>>2]-+g[b+4>>2]);return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[11106]|0;g=c[f+6436>>2]|0;do if(d|0){h=g+336|0;c[h>>2]=c[h>>2]|c[g+328>>2];if((c[f+6668>>2]|0)!=(d|0)?(a[f+6752>>0]|0)==0:0)break;f=c[f+6664>>2]|0;if((c[f+636>>2]|0)==(c[g+636>>2]|0)){if((g|0)!=(f|0)?((c[f+8>>2]|c[g+8>>2])&8388608|0)==0:0)break;eh(g,e|0?e:b,d)}}while(0);c[g+280>>2]=d;f=g+288|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];f=g+284|0;c[f>>2]=0;if(!(fh(b,d,0)|0))if(gh(b,b+8|0,1)|0){c[f>>2]=c[f>>2]|1;f=1}else f=1;else f=0;return f|0}function eh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;h=n+24|0;i=n+8|0;f=n;k=c[11106]|0;m=c[b+372>>2]|0;g=b+20|0;lf(h,d,g);lf(f,d+8|0,g);Yg(i,h,f);f=k+6753|0;do if(a[f>>0]|0?(c[k+6740>>2]|0)==(c[b+324>>2]|0):0){g=k+6756|0;if(!(m&16)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];a[f>>0]=0;Lh();break}if(!(c[g>>2]|0)){c[g>>2]=e;g=k+6760|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2]}}while(0);f=k+6668|0;if((((m&8|0)==0?(c[f>>2]|0)!=(e|0):0)?(j=(c[k+6664>>2]|0)==(b|0)?k+6792|0:k+6832|0,a[k+6777>>0]|0):0)?(c[h>>2]=c[d>>2],c[h+4>>2]=c[d+4>>2],c[h+8>>2]=c[d+8>>2],c[h+12>>2]=c[d+12>>2],rs(j,h)|0):0){c[j>>2]=e;c[j+4>>2]=c[(Rg(b+472|0)|0)>>2];c[j+8>>2]=b;m=j+24|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}if((c[f>>2]|0)==(e|0)){c[k+6664>>2]=b;m=c[b+324>>2]|0;c[k+6740>>2]=m;a[k+6748>>0]=1;c[k+6744>>2]=c[b+688>>2];m=b+652+(m<<4)|0;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2]}l=n;return}function fh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[11106]|0;do if(!(lh(b,(c[f+6436>>2]|0)+484|0)|0)){if(d|0?(c[f+6464>>2]|0)==(d|0):0){g=6;break}if(!e?(a[f+10628>>0]|0)!=0:0)g=6;else b=1}else g=6;while(0);if((g|0)==6)b=0;return b|0}function gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;e=k+32|0;f=k+16|0;g=k+8|0;h=k;i=c[11106]|0;j=c[i+6436>>2]|0;Yg(e,a,b);if(d)Cj(e,j+484|0);j=i+5436|0;lf(g,e,j);nf(h,e+8|0,j);Yg(f,g,h);j=Gj(f,i+208|0)|0;l=k;return j|0}function hh(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;f=c[d+6436>>2]|0;if((a[d+6751>>0]|0)!=0?(a[d+6750>>0]|0)==0:0)b=ih()|0;else g=4;do if((g|0)==4)if(c[f+284>>2]&1){if(b&3|0)Bb(5192,5025,2455,35031);if(!((b&64|0)==0?(c[d+6444>>2]|0)!=(c[f+624>>2]|0):0)){if(((((b&32|0)==0?(e=c[d+6464>>2]|0,e|0):0)?(e|0)!=(c[f+280>>2]|0):0)?(a[d+6478>>0]|0)==0:0)?(e|0)!=(c[f+100>>2]|0):0){b=0;break}if(jh(f,b)|0?(c[f+372>>2]&4|0)==0:0){if((c[f+280>>2]|0)==(c[f+100>>2]|0)?a[f+146>>0]|0:0){b=0;break}b=1}else b=0}else b=0}else b=0;while(0);return b|0}function ih(){var b=0,d=0;b=c[11106]|0;d=c[b+6668>>2]|0;if((d|0)!=0?(a[b+6750>>0]|0)==0:0)b=(d|0)==(c[(c[b+6436>>2]|0)+280>>2]|0);else b=0;return b|0}function jh(b,d){b=b|0;d=d|0;var e=0;e=c[(c[11106]|0)+6664>>2]|0;do if(!e)e=1;else{e=c[e+624>>2]|0;if((e|0?a[e+145>>0]|0:0)?(e|0)!=(c[b+624>>2]|0):0){e=c[e+8>>2]|0;if(e&134217728|0){e=0;break}if((d&8|0)==0&(e&67108864|0)!=0){e=0;break}}e=1}while(0);return e|0}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11106]|0;e=c[f+6448>>2]|0;if(!((e|0)==0|(e|0)==(d|0))?(a[f+6452>>0]|0)==0:0)e=0;else g=3;do if((g|0)==3){e=c[f+6436>>2]|0;if((c[f+6440>>2]|0)==(e|0)){g=c[f+6464>>2]|0;if(!((g|0)==0|(g|0)==(d|0))?(a[f+6478>>0]|0)==0:0){e=0;break}if(((gh(b,b+8|0,1)|0?(a[f+6751>>0]|0)==0:0)?jh(e,0)|0:0)?(c[e+372>>2]&4|0)==0:0){_g(d);e=1}else e=0}else e=0}while(0);return e|0}function lh(a,b){a=a|0;b=b|0;if((+g[b+4>>2]<+g[a+12>>2]?+g[b+12>>2]>+g[a+4>>2]:0)?+g[b>>2]<+g[a+8>>2]:0)a=+g[b+8>>2]>+g[a>>2];else a=0;return a|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[11106]|0;i=(c[b+372>>2]&5|0)==1;g=b+684|0;c[g>>2]=(c[g>>2]|0)+1;if(i){j=b+688|0;c[j>>2]=(c[j>>2]|0)+1}if(((((e?(c[h+6464>>2]|0)==(d|0):0)?(c[b+700>>2]|0)==2147483647:0)?(f=b+704|0,(c[f>>2]|0)==2147483647):0)?(a[h+233>>0]|0)==0:0)?nh(0,1)|0:0)c[f>>2]=((a[h+234>>0]|0)==0?1:i<<31>>31)+(c[b+688>>2]|0);e=(c[g>>2]|0)==(c[b+692>>2]|0);if(!(e|i^1))if((c[b+688>>2]|0)==(c[b+696>>2]|0)){c[h+6688>>2]=d;e=1}else e=0;return e|0}function nh(a,b){a=a|0;b=b|0;a=c[(c[11106]|0)+44+(a<<2)>>2]|0;if((a|0)>-1)a=Kj(a,b)|0;else a=0;return a|0}function oh(a){a=a|0;var b=0;b=a+684|0;c[b>>2]=(c[b>>2]|0)+-1;a=a+688|0;c[a>>2]=(c[a>>2]|0)+-1;return}function ph(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;j=m+8|0;f=m;h=m+16|0;k=c[11106]|0;Xe(j);i=+g[b>>2];if(!(!(i<0.0)?!(+g[b+4>>2]<0.0):0)){n=(c[k+6436>>2]|0)+20|0;qh(h);nf(f,n,h);n=f;f=c[n+4>>2]|0;h=j;c[h>>2]=c[n>>2];c[h+4>>2]=f}if(i<=0.0){if(!(i==0.0))d=i+ +pg(+g[j>>2]-+g[(c[k+6436>>2]|0)+220>>2],4.0);g[b>>2]=d}f=b+4|0;d=+g[f>>2];if(d<=0.0){if(!(d==0.0))e=d+ +pg(+g[j+4>>2]-+g[(c[k+6436>>2]|0)+224>>2],4.0);g[f>>2]=e}k=b;b=c[k+4>>2]|0;n=a;c[n>>2]=c[k>>2];c[n+4>>2]=b;l=m;return}function qh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0.0;b=wg()|0;f=b+76|0;e=c[f+4>>2]|0;d=a;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=c[b+468>>2]|0;if(d|0){h=+Ym((c[d+12>>2]|0)+1|0);g[a>>2]=h-+g[b+84>>2]}return}function rh(a,b){a=a|0;b=+b;var c=0,d=0,e=0;e=l;l=l+16|0;c=e;if(b<0.0)b=0.0;else{d=wg()|0;if(!(b==0.0)){if(b>0.0)b=+g[d+20>>2]-+g[d+108>>2]+b}else{qh(c);b=+g[c>>2]+ +g[d+20>>2]}b=+pg(b-+g[a>>2],1.0)}l=e;return +b}function sh(){var a=0,b=0;a=c[11106]|0;b=c[a+188>>2]|0;if(!b)a=46144;else a=Bd[b&63](c[a+196>>2]|0)|0;return a|0}function th(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+192>>2]|0;if(d|0)ne[d&127](c[b+196>>2]|0,a);return}function uh(){return 31712}function vh(){return c[11106]|0}function wh(a){a=a|0;c[11106]=a;return}function xh(b){b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;f=e+1|0;d=vf(14224)|0;a[f>>0]=a[e>>0]|0;d=Fg(14224,f,d)|0;yh(d,b);if(!(c[11106]|0))wh(d);l=e;return d|0}function yh(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;h=p;cf(d+4|0);We(d+5352|0);o=d+6236|0;xv(o);Ur(d+6384|0);Ur(d+6396|0);Ur(d+6408|0);Bg(d+6420|0);f=d+6484|0;Xe(f);ws(d+6504|0);xs(d+6516|0);ys(d+6528|0);zs(d+6540|0);zs(d+6552|0);As(d+6564|0);i=d+6700|0;yg(i);yg(d+6760|0);Bs(d+6792|0);Bs(d+6832|0);Cs(d+6872|0);Ds(d+6892|0);Gg(d+6920|0,0);Es(d+7052|0);yg(d+7088|0);Fs(d+7124|0);Gs(d+7144|0);Sz(d+10428|0);Ye(d+10520|0);j=d+10540|0;Xe(j);k=d+10560|0;Xe(k);Hs(d+10572|0);m=d+10584|0;Xe(m);n=d+10592|0;Xe(n);Is(d+10604|0);Js(d+10616|0);a[d>>0]=0;c[d+6224>>2]=0;g[d+6232>>2]=0.0;g[d+6228>>2]=0.0;q=(e|0)!=0;a[d+1>>0]=(q^1)&1;if(!q){e=vf(88)|0;a[h>>0]=a[p+16>>0]|0;e=Fg(88,h,e)|0;ex(e)}c[d+140>>2]=e;g[d+6368>>2]=0.0;c[d+6372>>2]=0;c[d+6380>>2]=-1;c[d+6376>>2]=-1;q=d+6432|0;r=d+6456|0;c[d+6480>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;a[q+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;b[r+20>>1]=0;a[r+22>>0]=0;Ze(h,-1.0,-1.0);r=h;q=c[r+4>>2]|0;e=f;c[e>>2]=c[r>>2];c[e+4>>2]=q;c[d+6492>>2]=0;c[d+6496>>2]=0;c[d+6500>>2]=0;a[d+6656>>0]=0;e=d+6660|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));yg(h);c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];q=d+6716|0;c[d+6736>>2]=0;c[d+6740>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;a[q+16>>0]=0;c[d+6744>>2]=2147483647;a[d+6748>>0]=0;a[d+6749>>0]=0;a[d+6750>>0]=1;q=d+6751|0;c[d+6756>>2]=0;a[d+6776>>0]=0;a[d+6777>>0]=0;c[d+6780>>2]=0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;c[d+6788>>2]=-1;c[d+6784>>2]=-1;g[d+6916>>2]=0.0;c[d+6960>>2]=o;c[d+6964>>2]=11892;c[d+7036>>2]=0;a[d+7040>>0]=0;c[d+7044>>2]=0;c[d+7048>>2]=-1;q=d+7104|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[d+7120>>2]=-1;q=d+7136|0;c[q>>2]=0;c[q+4>>2]=0;c[d+10512>>2]=0;c[d+10516>>2]=335872;g[d+10536>>2]=0.0;Ze(h,0.0,0.0);q=h;o=c[q+4>>2]|0;r=j;c[r>>2]=c[q>>2];c[r+4>>2]=o;g[d+10548>>2]=.009999999776482582;g[d+10552>>2]=.009999999776482582;g[d+10556>>2]=10.0;Ze(h,0.0,0.0);r=h;o=c[r+4>>2]|0;q=k;c[q>>2]=c[r>>2];c[q+4>>2]=o;c[d+10568>>2]=0;Ze(h,-1.0,-1.0);q=h;o=c[q>>2]|0;q=c[q+4>>2]|0;r=n;c[r>>2]=o;c[r+4>>2]=q;r=m;c[r>>2]=o;c[r+4>>2]=q;g[d+10600>>2]=0.0;a[d+10628>>0]=0;c[d+10632>>2]=0;c[d+10636>>2]=0;c[d+10640>>2]=0;c[d+10644>>2]=2;sca(d+10648|0,0,488)|0;c[d+11144>>2]=-1;c[d+11140>>2]=-1;c[d+11136>>2]=-1;sca(d+11148|0,0,3073)|0;l=p;return}function zh(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;c[b>>2]=a;if(!a){a=c[11106]|0;c[b>>2]=a}Ah(a);if((c[11106]|0)==(a|0))wh(0);Bh(b);l=d;return}function Ah(b){b=b|0;var d=0,e=0;d=b+140|0;if(c[d>>2]|0?a[b+1>>0]|0:0)Ci(d);if(a[b>>0]|0){bi(c[b+20>>2]|0);e=b+6384|0;if((c[e>>2]|0)>0){d=0;do{Di(ni(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Ei(e);Ei(b+6396|0);c[b+6436>>2]=0;Ei(b+6408|0);Fi(b+6420|0);c[b+6664>>2]=0;c[b+6440>>2]=0;c[b+6444>>2]=0;c[b+6492>>2]=0;c[b+6500>>2]=0;e=b+10604|0;if((c[e>>2]|0)>0){d=0;do{Og(Gi(e,d)|0);d=d+1|0}while((d|0)<(c[e>>2]|0))}Hi(b+6504|0);Ii(b+6516|0);Ji(b+6528|0);Ki(b+6540|0);Ki(b+6552|0);Li(b+6892|0);Lv(b+6920|0);Mi(b+10572|0);Ni(b+7148|0);Mi(b+7160|0);Mi(b+7172|0);Oi(e);Pi(b+10616|0);d=b+10632|0;e=c[d>>2]|0;if(!((e|0)==0|(e|0)==(c[979]|0))){Daa(e)|0;c[d>>2]=0}d=b+10636|0;if(c[d>>2]|0)Qi(d);a[b>>0]=0}return}function Bh(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){_u(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ch(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2649,31888);else return a+4|0;return 0}function Dh(){var a=0;a=c[11106]|0;if(!a)Bb(5271,5025,2655,31894);else return a+5352|0;return 0}function Eh(){var b=0;b=(c[11106]|0)+6872|0;return (a[b>>0]|0?b:0)|0}function Fh(){return +(+g[(c[11106]|0)+6368>>2])}function Gh(){return c[(c[11106]|0)+6372>>2]|0}function Hh(){return (c[11106]|0)+6920|0}function Ih(){return (c[11106]|0)+6236|0}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=c[11106]|0;if((c[h+6664>>2]|0)!=(b|0))Bb(5376,5025,2689,5398);g=c[b+8>>2]|0;do if(!(g&262144)){if((g&83886080|0)==16777216?(e=c[b+644>>2]|0,!((e|0)==0|d)):0){i=8;break}Kh(0,c[h+6740>>2]|0);a[h+6753>>0]=1;a[h+6754>>0]=0;c[h+6756>>2]=0;yg(f);h=h+6760|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];Lh()}else{e=c[b+644>>2]|0;i=8}while(0);if((i|0)==8)c[h+6668>>2]=e;l=j;return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[11106]|0;e=c[d+6664>>2]|0;if(!e)Bb(11902,5025,2018,11914);if(b>>>0<2){c[d+6668>>2]=a;c[e+644+(b<<2)>>2]=a;return}else Bb(11923,5025,2019,11914)}function Lh(){var b=0,d=0;b=c[11106]|0;if(!(a[b+6777>>0]|0))d=a[b+6753>>0]|0;else d=1;a[b+6752>>0]=d;return}function Mh(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=c[11106]|0;a:do if(b){d=+g[e+5184+(a<<2)>>2];f=d<0.0;if((b|0)==2&f){d=+g[e+5268+(a<<2)>>2]>=0.0?1.0:0.0;break}if(f)d=0.0;else switch(b|0){case 1:{d=d==0.0?1.0:0.0;break a}case 3:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.800000011920929)|0);break a}case 4:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2],+g[e+132>>2]*2.0)|0);break a}case 5:{d=+(Nh(d,d-+g[e+12>>2],+g[e+128>>2]*.800000011920929,+g[e+132>>2]*.30000001192092896)|0);break a}default:{d=0.0;break a}}}else d=+g[e+784+(a<<2)>>2];while(0);return +d}function Nh(a,b,c,d){a=+a;b=+b;c=+c;d=+d;var e=0;if(!(a==0.0))if(a<=c|d<=0.0)e=0;else{e=~~((a-c)/d)-~~((b-c)/d)|0;e=(e|0)>0?e:0}else e=1;return e|0}function Oh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0.0,i=0.0;g=l;l=l+16|0;f=g;Ze(a,0.0,0.0);if(b&1|0){i=+Mh(18,c);i=i-+Mh(17,c);h=+Mh(20,c);Ze(f,i,h-+Mh(19,c));Ph(a,f)}if(b&2|0){h=+Mh(5,c);h=h-+Mh(4,c);i=+Mh(7,c);Ze(f,h,i-+Mh(6,c));Ph(a,f)}if(b&4|0){h=+Mh(9,c);h=h-+Mh(8,c);i=+Mh(11,c);Ze(f,h,i-+Mh(10,c));Ph(a,f)}if(d!=0.0?Qh(14)|0:0)mf(a,d);if(e!=0.0?Qh(15)|0:0)mf(a,e);l=g;return}function Ph(a,b){a=a|0;b=b|0;g[a>>2]=+g[b>>2]+ +g[a>>2];a=a+4|0;g[a>>2]=+g[b+4>>2]+ +g[a>>2];return}function Qh(a){a=a|0;return +g[(c[11106]|0)+784+(a<<2)>>2]>0.0|0}function Rh(){var b=0,e=0,f=0.0,h=0,i=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,E=0.0;D=l;l=l+48|0;C=D+8|0;r=D;y=D+40|0;z=D+32|0;A=D+24|0;B=c[11106]|0;if(!B)Bb(5271,5025,3272,31915);t=B+12|0;if(!(+g[t>>2]>=0.0))Bb(5412,5025,3277,31915);m=B+4|0;if(+g[m>>2]>=0.0?(i=B+8|0,+g[i>>2]>=0.0):0){k=B+140|0;b=(c[k>>2]|0)+48|0;if((c[b>>2]|0)<=0)Bb(5608,5025,3279,31915);if(!(Th(c[(Sh(b,0)|0)>>2]|0)|0))Bb(5731,5025,3280,31915);h=B+5500|0;if(!(+g[h>>2]>0.0))Bb(5860,5025,3281,31915);f=+g[B+5352>>2];if(!(f>=0.0)|!(f<=1.0))Bb(5923,5025,3282,31915);n=B+6372|0;b=c[n>>2]|0;if((b|0)!=0?(c[B+6376>>2]|0)!=(b|0):0)Bb(6079,5025,3283,31915);else e=0;while(1){if(((c[B+44+(e<<2)>>2]|0)+1|0)>>>0>=513){x=22;break}if((e|0)<20)e=e+1|0;else break}if((x|0)==22)Bb(6213,5025,3285,31915);v=B+28|0;if(c[v>>2]&1|0?(c[B+92>>2]|0)==-1:0)Bb(6400,5025,3289,31915);if(!(a[B>>0]|0)){Uh(B);b=c[n>>2]|0}q=B+6368|0;g[q>>2]=+g[t>>2]+ +g[q>>2];c[n>>2]=b+1;c[B+10568>>2]=0;c[B+6432>>2]=0;Vh(Wh()|0);if(!(Th(c[B+6224>>2]|0)|0))Bb(6503,5025,3301,31915);If(C,0.0,0.0,+g[m>>2],+g[i>>2]);b=B+6256|0;c[b>>2]=c[C>>2];c[b+4>>2]=c[C+4>>2];c[b+8>>2]=c[C+8>>2];c[b+12>>2]=c[C+12>>2];c[B+6252>>2]=c[h>>2];b=B+6920|0;yv(b);cw(b,(c[k>>2]|0)+4|0);$v(b);c[B+6956>>2]=(a[B+5497>>0]|0?2:0)|d[B+5496>>0];Xh(B+6872|0);b=B+6456|0;if(!(c[b>>2]|0))g[B+6460>>2]=0.0;h=B+6448|0;c[b>>2]=c[h>>2];c[h>>2]=0;a[B+6452>>0]=0;h=B+6476|0;if(!(a[h>>0]|0)){b=B+6464|0;e=c[b>>2]|0;if((e|0)==0?1:(c[B+6468>>2]|0)!=(e|0))w=b;else{Zg();x=35}}else{b=B+6464|0;x=35}if((x|0)==35){w=b;e=c[b>>2]|0}if(e|0){u=B+6472|0;g[u>>2]=+g[t>>2]+ +g[u>>2]}c[B+6468>>2]=e;a[h>>0]=0;a[B+6477>>0]=0;b=B+10512|0;u=c[b>>2]|0;if(!((u|0)==0|(e|0)==(u|0)))c[b>>2]=0;s=B+7040|0;if(a[s>>0]|0?((c[B+7068>>2]|0)+1|0)<(c[n>>2]|0):0){Yh();Zh(B+7124|0);u=B+7136|0;c[u>>2]=0;c[u+4>>2]=0}b=B+7112|0;c[B+7116>>2]=c[b>>2];c[b>>2]=0;g[B+7108>>2]=3402823466385288598117041.0e14;qca(B+3136|0,B+1088|0,2048)|0;b=0;do{e=B+1088+(b<<2)|0;do if(!(a[B+237+b>>0]|0))f=-1.0;else{f=+g[e>>2];if(f<0.0){f=0.0;break}f=f+ +g[t>>2]}while(0);g[e>>2]=f;b=b+1|0}while((b|0)!=512);_h();u=B+208|0;do if($h(u)|0){b=B+900|0;if(!($h(b)|0)){x=51;break}lf(C,u,b);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}else x=51;while(0);if((x|0)==51){Ze(C,0.0,0.0);e=C;b=c[e>>2]|0;e=c[e+4>>2]|0;p=B+892|0;c[p>>2]=b;c[p+4>>2]=e}o=(c[j>>2]=b,+g[j>>2])!=0.0;p=B+6751|0;if(o|(c[j>>2]=e,+g[j>>2])!=0.0)a[p>>0]=0;n=u;m=c[n+4>>2]|0;k=B+900|0;c[k>>2]=c[n>>2];c[k+4>>2]=m;k=C+4|0;m=B+32|0;n=B+36|0;i=0;do{h=B+216+i|0;if(!(a[h>>0]|0)){o=B+968+i|0;a[o>>0]=0;b=B+988+(i<<2)|0;e=b;b=+g[b>>2]>=0.0}else{e=B+988+(i<<2)|0;o=B+968+i|0;a[o>>0]=+g[e>>2]<0.0&1;b=0}a[B+978+i>>0]=b&1;b=c[e>>2]|0;c[B+1008+(i<<2)>>2]=b;f=(c[j>>2]=b,+g[j>>2]);do if(!(a[h>>0]|0))f=-1.0;else{if(f<0.0){f=0.0;break}f=+g[t>>2]+f}while(0);g[e>>2]=f;e=B+973+i|0;a[e>>0]=0;do if(!(a[o>>0]|0)){if(!(a[h>>0]|0))break;lf(C,u,B+908+(i<<3)|0);x=B+1028+(i<<3)|0;f=+g[C>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1028+(i<<3)+4|0;f=+g[k>>2];g[x>>2]=+pg(+g[x>>2],f<0.0?-f:f);x=B+1068+(i<<2)|0;f=+g[x>>2];g[x>>2]=+pg(f,+rf(C));x=70}else{f=+g[q>>2];h=B+948+(i<<2)|0;do if(f-+g[h>>2]<+g[m>>2]){b=B+908+(i<<3)|0;lf(C,u,b);E=+rf(C);f=+g[n>>2];if(!(E>0]=1;f=-3402823466385288598117041.0e14}else b=B+908+(i<<3)|0;while(0);g[h>>2]=f;x=u;h=c[x+4>>2]|0;e=b;c[e>>2]=c[x>>2];c[e+4>>2]=h;Ze(C,0.0,0.0);e=C;h=c[e+4>>2]|0;x=B+1028+(i<<3)|0;c[x>>2]=c[e>>2];c[x+4>>2]=h;g[B+1068+(i<<2)>>2]=0.0;x=70}while(0);do if((x|0)==70){x=0;if(!(a[o>>0]|0))break;a[p>>0]=0}while(0);i=i+1|0}while((i|0)!=5);f=+g[t>>2];x=B+11128|0;q=B+10648+(c[x>>2]<<2)|0;b=B+11132|0;g[b>>2]=+g[b>>2]+(f-+g[q>>2]);g[q>>2]=f;c[x>>2]=((c[x>>2]|0)+1|0)%120|0;g[B+876>>2]=1.0/(+g[b>>2]/120.0);ai();b=B+10600|0;f=+g[b>>2];do if(f>0.0){E=f-+g[t>>2];g[b>>2]=E;if(!(E<=0.0))break;bi(c[B+20>>2]|0)}while(0);b=c[B+6500>>2]|0;do if(!b)x=78;else{if(c[b+8>>2]&512|0){x=78;break}e=B+6440|0;c[e>>2]=b;x=79}while(0);if((x|0)==78){q=u;e=c[q+4>>2]|0;b=r;c[b>>2]=c[q>>2];c[b+4>>2]=e;c[C>>2]=c[r>>2];c[C+4>>2]=c[r+4>>2];b=ci(C)|0;e=B+6440|0;c[e>>2]=b;if(!b)i=0;else x=79}if((x|0)==79)i=c[b+624>>2]|0;q=B+6444|0;c[q>>2]=i;b=di()|0;p=(b|0)!=0;h=B+6916|0;do if(p){g[h>>2]=+sf(+g[h>>2]+ +g[t>>2]*6.0,1.0);if(!i)break;if(ei(i,b)|0)break;c[e>>2]=0;c[q>>2]=0}else g[h>>2]=0.0;while(0);m=B+6540|0;b=-1;k=0;i=0;do{if(a[B+968+i>>0]|0){if(!(c[e>>2]|0))h=(fi(m)|0)^1;else h=1;a[B+983+i>>0]=h&1}t=a[B+216+i>>0]|0;k=(t&255|k&1|0)!=0;do if(t<<24>>24){if((b|0)!=-1?!(+g[B+948+(i<<2)>>2]<+g[B+948+(b<<2)>>2]):0)break;b=i}while(0);i=i+1|0}while((i|0)!=5);if((b|0)==-1)o=1;else o=(a[B+983+b>>0]|0)!=0;n=B+11136|0;b=c[n>>2]|0;do if((b|0)==-1){if(o?k|(c[e>>2]|0)!=0:0){b=1;break}b=(fi(m)|0)^1}else b=(b|0)!=0;while(0);a[B+868>>0]=b&1;i=B+11140|0;b=c[i>>2]|0;if((b|0)==-1)b=p|(c[w>>2]|0)!=0;else b=(b|0)!=0;h=B+869|0;a[h>>0]=b&1;do if(a[B+872>>0]|0){if((c[v>>2]&9|0)!=1)break;a[h>>0]=1}while(0);r=B+11144|0;a[B+870>>0]=((c[r>>2]|0)+1|0)>>>0>1&1;c[B+7036>>2]=0;c[r>>2]=-1;c[i>>2]=-1;c[n>>2]=-1;Ze(C,1.0,1.0);r=C;t=c[r+4>>2]|0;v=B+10584|0;c[v>>2]=c[r>>2];c[v+4>>2]=t;if(!(a[s>>0]|0))b=0;else b=(c[B+7044>>2]&16|0)!=0;do if(o|b){m=c[e>>2]|0;if(!m)break;if(a[m+147>>0]|0)break;h=B+224|0;f=+g[h>>2];i=f!=0.0;if(!i?!(+g[B+228>>2]!=0.0):0)break;else k=m;while(1){b=c[k+8>>2]|0;if((b&16777752|0)!=16777232)break;e=c[k+620>>2]|0;if(!e)break;else k=e}e=(b&528|0)==0;do if(i)if(!(a[B+233>>0]|0)){if(!e)break;f=+ji(k)*5.0;E=+ki(k+68|0);E=+(~~+sf(f,(E+ +g[k+88>>2]*2.0)*.6700000166893005)|0);li(k,+g[k+112>>2]-+g[h>>2]*E);break}else{if(!(a[B+148>>0]|0))break;v=m+612|0;E=+g[v>>2];f=+gi(f*.10000000149011612+E,.5,2.5);E=f/E;g[v>>2]=f;v=m+28|0;af(z,v,1.0-E);t=m+20|0;lf(A,u,t);ii(y,z,A);hi(C,y,v);Ph(t,C);Ph(m+12|0,C);mf(v,E);mf(m+36|0,E);break}while(0);b=B+228|0;if(+g[b>>2]==0.0|e^1)break;f=+ji(k);if(a[B+233>>0]|0)break;if(c[m+8>>2]&16|0)break;mi(m,+g[m+108>>2]-f*+g[b>>2])}else{c[q>>2]=0;c[e>>2]=0}while(0);do if(!(c[w>>2]|0)){e=B+6664|0;b=c[e>>2]|0;if(!b)break;if(!(a[b+144>>0]|0))break;if(c[b+8>>2]&262144|0)break;if(a[B+233>>0]|0)break;if(!(nh(0,0)|0))break;do if(!(c[B+6668>>2]|0))x=137;else{b=c[B+6744>>2]|0;if((b|0)==2147483647){x=137;break}b=b+1+(a[B+234>>0]|0?-1:1)|0}while(0);if((x|0)==137)b=(a[B+234>>0]<<7&255)<<24>>24>>7<<24>>24;c[(c[e>>2]|0)+704>>2]=b}while(0);c[B+6744>>2]=2147483647;e=B+6384|0;if(c[e>>2]|0){b=0;do{A=c[(ni(e,b)|0)>>2]|0;z=A+144|0;a[A+145>>0]=a[z>>0]|0;a[z>>0]=0;a[A+146>>0]=0;b=b+1|0}while((b|0)!=(c[e>>2]|0))}b=B+6664|0;e=c[b>>2]|0;do if(e|0){if(a[e+145>>0]|0)break;oi(0)}while(0);pi(B+6408|0,0);qi(B+6552|0,0);ri(c[b>>2]|0);Ze(C,400.0,400.0);si(C,4);ti(6522,0,0)|0;l=D;return}Bb(5520,5025,3278,31915)}function Sh(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Th(a){a=a|0;return (c[a+68>>2]|0)!=0|0}function Uh(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d;f=vf(12)|0;a[e>>0]=a[d+24>>0]|0;f=Fg(12,e,f)|0;ui(f);c[b+10636>>2]=f;vi(e);c[e>>2]=6537;c[e+4>>2]=Af(6537,0,0)|0;c[e+8>>2]=8;c[e+12>>2]=4;c[e+16>>2]=1;zi(b+10616|0,e);if(Ai(b+10604|0)|0){Bi(c[b+20>>2]|0);a[b>>0]=1;l=d;return}else Bb(6544,5025,3611,6570)}function Vh(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;f=c[11106]|0;if(a|0?Th(a)|0:0){b=+g[a+4>>2];if(!(b>0.0))Bb(7761,5025,6452,7746);e=f+6224|0;c[e>>2]=a;g[f+6232>>2]=+g[f+144>>2]*+g[a>>2]*b;d=c[f+6436>>2]|0;if(!d)b=0.0;else{b=+ji(d);a=c[e>>2]|0}g[f+6228>>2]=b;h=(c[a+68>>2]|0)+40|0;d=c[h+4>>2]|0;e=f+6236|0;c[e>>2]=c[h>>2];c[e+4>>2]=d;c[f+6244>>2]=a;g[f+6248>>2]=b;return}Bb(7721,5025,6451,7746)}function Wh(){var a=0,b=0;b=c[11106]|0;a=c[b+152>>2]|0;if(!a)a=c[(Sh((c[b+140>>2]|0)+48|0,0)|0)>>2]|0;return a|0}function Xh(b){b=b|0;a[b>>0]=0;b=b+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}function Yh(){var b=0;b=c[11106]|0;a[b+7040>>0]=0;Mr(b+7052|0);c[b+7116>>2]=0;c[b+7112>>2]=0;g[b+7108>>2]=3402823466385288598117041.0e14;c[b+7120>>2]=-1;return}function Zh(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function _h(){var b=0,d=0.0,e=0.0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,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;O=l;l=l+80|0;J=O;K=O+56|0;L=O+48|0;M=O+40|0;G=O+32|0;H=O+24|0;I=O+16|0;N=c[11106]|0;p=N+871|0;a[p>>0]=0;f=N+784|0;h=N+848|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;r=N+28|0;if(c[r>>2]&1|0){b=c[N+92>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[f>>2]=1.0;b=c[N+96>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+792>>2]=1.0;b=c[N+100>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+788>>2]=1.0;b=c[N+48>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+852>>2]=1.0;b=c[N+52>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+856>>2]=1.0;b=c[N+56>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+860>>2]=1.0;b=c[N+60>>2]|0;if((b|0)!=-1?Ij(b)|0:0)g[N+864>>2]=1.0;if(a[N+233>>0]|0)g[N+840>>2]=1.0;if(a[N+234>>0]|0)g[N+844>>2]=1.0;if(a[N+235>>0]|0)g[h>>2]=1.0}b=N+5268|0;f=N+5184|0;h=b+84|0;do{c[b>>2]=c[f>>2];b=b+4|0;f=f+4|0}while((b|0)<(h|0));B=N+12|0;b=0;do{f=N+5184+(b<<2)|0;if(+g[N+784+(b<<2)>>2]>0.0){d=+g[f>>2];if(d<0.0)d=0.0;else d=d+ +g[B>>2]}else d=-1.0;g[f>>2]=d;b=b+1|0}while((b|0)!=21);A=N+6756|0;f=c[A>>2]|0;do if(!f)i=N+6754|0;else{if(a[N+6750>>0]|0?(i=N+6754|0,(a[i>>0]|0)==0):0)break;h=N+6664|0;if(!(c[h>>2]|0))Bb(11902,5025,2996,11956);i=N+6754|0;j=N+6740|0;b=c[j>>2]|0;if(!(a[i>>0]|0)){Kh(f,b);b=N+6760|0}else{z=N+6760|0;Hq(f,b,z);b=z}z=(c[h>>2]|0)+652+(c[j>>2]<<4)|0;c[z>>2]=c[b>>2];c[z+4>>2]=c[b+4>>2];c[z+8>>2]=c[b+8>>2];c[z+12>>2]=c[b+12>>2]}while(0);y=N+6753|0;a[y>>0]=0;a[i>>0]=0;c[A>>2]=0;m=N+6696|0;c[m>>2]=0;z=N+6777|0;do if(a[z>>0]|0){f=N+6792|0;if(c[f>>2]|0){b=N+6832|0;if(!(c[b>>2]|0)){x=N+6664|0;b=f;j=x;f=c[x>>2]|0}else{k=f;E=50}}else{if(!(c[N+6832>>2]|0))break;k=N+6832|0;b=k;E=50}do if((E|0)==50){f=c[(c[N+6840>>2]|0)+620>>2]|0;j=N+6664|0;h=c[j>>2]|0;if((f|0)==(h|0)){d=+g[N+6844>>2];e=+g[N+6804>>2];if(!(d>2]<+g[N+6808>>2])){b=k;break}}}else{b=k;f=h}}while(0);if(f|0?(n=b+8|0,o=c[n>>2]|0,o|0):0){f=N+6740|0;h=b+24|0;if(!(c[f>>2]|0))Ys(o,h);Zg();c[j>>2]=c[n>>2];Hq(c[b>>2]|0,c[f>>2]|0,h);c[m>>2]=c[b>>2];a[N+6776>>0]=0;break}Bb(11966,5025,3017,11956)}while(0);t=N+6780|0;if((c[t>>2]|0)==2){if(!(a[z>>0]|0))Bb(11996,5025,3034,11956);if((c[N+6792>>2]|0)==0?(c[N+6832>>2]|0)==0:0)a[N+6750>>0]=0;c[t>>2]=0}k=N+6749|0;j=N+6748|0;if(a[k>>0]|0?a[j>>0]|0:0){if(c[r>>2]&4|0){sk(J);w=J;o=c[w>>2]|0;w=c[w+4>>2]|0;x=N+900|0;c[x>>2]=o;c[x+4>>2]=w;x=N+208|0;c[x>>2]=o;c[x+4>>2]=w;a[p>>0]=1}a[k>>0]=0}a[j>>0]=0;c[N+6688>>2]=0;w=N+6740|0;if((c[w>>2]|0)>>>0>=2)Bb(12013,5025,3053,11956);x=N+6664|0;b=c[x>>2]|0;if(((b|0?(Zs(b),q=c[x>>2]|0,q|0):0)?(s=q+640|0,c[s>>2]|0):0)?(c[w>>2]|0)==0:0)c[s>>2]=0;_s();if((c[r>>2]&3|0)!=0?(u=c[x>>2]|0,(u|0)!=0):0){u=c[u+8>>2]&262144;a[N+872>>0]=u>>>18^1;if(((u|0)==0?(c[N+6668>>2]|0)!=0:0)?(a[N+6750>>0]|0)==0:0)b=1;else E=86}else{a[N+872>>0]=0;E=86}if((E|0)==86)if(!(c[N+6720>>2]|0))b=(a[y>>0]|0)!=0;else b=1;a[N+873>>0]=b&1;do if(Pn(1,1)|0){if(c[N+6464>>2]|0){Zg();break}f=c[x>>2]|0;h=(f|0)==0;if((!h?(c[f+8>>2]&83886080|0)==16777216:0)?(v=c[f+620>>2]|0,v|0):0){b=f+104|0;if(!(c[b>>2]|0))Bb(12048,5025,3079,11956);dj(v);Kh(c[b>>2]|0,0);a[j>>0]=0;if(!(a[N+6751>>0]|0))break;a[k>>0]=1;break}b=N+6540|0;if((c[b>>2]|0)>0){if(c[(c[(pl(b)|0)+4>>2]|0)+8>>2]&134217728|0)break;vk((c[b>>2]|0)+-1|0);break}if(c[w>>2]|0){$s(0);break}if(!h?(c[f+8>>2]&83886080|0)!=16777216:0)c[f+644>>2]=0;c[N+6668>>2]=0}while(0);n=N+6684|0;o=N+6680|0;p=N+6676|0;q=N+6672|0;s=N+6668|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;m=c[s>>2]|0;r=(m|0)==0;a:do if((!r?(a[N+6750>>0]|0)==0:0)?(c[N+6720>>2]|0)==0:0){b=c[x>>2]|0;if(b)if(!(c[b+8>>2]&262144)){k=Qh(0)|0;if(k){h=Pn(0,1)|0;f=c[N+6464>>2]|0;b=h^1;if(!((f|0)!=0|b)){c[q>>2]=m;c[p>>2]=m;if(h){b=m;f=m;E=123}else{b=m;f=m}}else{j=b;b=h;E=116}}else{j=1;f=c[N+6464>>2]|0;b=0;E=116}do if((E|0)==116){if(!f)if(k){c[p>>2]=m;if(b){b=m;f=0;E=123;break}else{b=m;f=0;break}}else if(b){b=0;f=0;E=123;break}else{b=0;f=0;break}if((f|0)!=(m|0)|k^1)b=0;else{c[p>>2]=m;b=m}if(!(j|(f|0)!=(m|0)))c[o>>2]=m;if((f|0)==(m|0))f=0;else{h=0;E=128;break a}}while(0);if((E|0)==123)c[o>>2]=m;if(Pn(2,1)|0){c[n>>2]=m;h=f;E=128}else{h=f;E=128}}else{h=0;b=0;E=128}else C=0}else{h=0;b=0;E=128}while(0);if((E|0)==128){f=c[x>>2]|0;if(f){if(c[f+8>>2]&262144)a[N+6750>>0]=1}else f=0;if((h|0)==0|(b|0)==(h|0))C=f;else Bb(12075,5025,3124,11956)}a[z>>0]=0;b=N+6692|0;f=c[b>>2]|0;if(f|0){c[n>>2]=f;c[o>>2]=f;c[p>>2]=f;c[q>>2]=f}c[b>>2]=0;if(!(c[N+6464>>2]|0))h=-1;else h=c[N+6480>>2]|0;f=c[t>>2]|0;j=N+6784|0;b:do if(!f){c[j>>2]=-1;if((C|0?(h|0)!=0&(c[N+6720>>2]|0)==0:0)?(c[C+8>>2]&262144|0)==0:0){if((h&1|0)!=0?at(4,17)|0:0){c[j>>2]=0;b=0}else b=-1;do if(h&2){if(!(at(5,18)|0))break;c[j>>2]=1;b=1}while(0);do if(h&4){if(!(at(6,19)|0))break;c[j>>2]=2;b=2}while(0);do if(h&8|0){if(!(at(7,20)|0))break;c[j>>2]=3;D=3;E=159;break b}while(0);if((b|0)!=-1){D=b;E=159}}}else{b=c[j>>2]|0;if((b|0)==-1)Bb(12114,5025,3148,11956);if((f|0)==1){c[t>>2]=2;D=b;E=159;break}else Bb(12144,5025,3149,11956)}while(0);if((E|0)==159?(a[z>>0]=1,c[N+6788>>2]=D,r):0){a[i>>0]=1;a[y>>0]=1;c[A>>2]=0;a[N+6750>>0]=0}Lh();f=c[x>>2]|0;if((f|0?(c[f+8>>2]&262144|0)==0:0)?(c[N+6720>>2]|0)==0:0){e=+ji(f)*100.0;e=+bf(e*+g[B>>2]+.5);do if((c[f+332>>2]|0)==0?a[f+321>>0]|0:0){if(!(a[z>>0]|0))break;b=c[j>>2]|0;if(b>>>0<2){mi(f,+bf(e*((b|0)==0?-1.0:1.0)+ +g[f+108>>2]));b=c[j>>2]|0}if((b&-2|0)!=2)break;li(f,+bf(e*((b|0)==2?-1.0:1.0)+ +g[f+112>>2]))}while(0);Oh(J,4,0,.10000000149011612,10.0);d=+g[J>>2];do if(d!=0.0){if(!(a[f+132>>0]|0))break;mi(f,+bf(e*d+ +g[f+108>>2]));a[N+6776>>0]=1}while(0);d=+g[J+4>>2];if(d!=0.0){li(f,+bf(e*d+ +g[f+112>>2]));a[N+6776>>0]=1}}Vs(N+6792|0);Vs(N+6832|0);if((a[z>>0]|0?(F=N+6776|0,a[F>>0]|0):0)?(c[w>>2]|0)==0:0){b=c[x>>2]|0;E=b+20|0;lf(L,b+516|0,E);Ze(M,1.0,1.0);lf(K,L,M);lf(H,b+524|0,E);Ze(I,1.0,1.0);nf(G,H,I);Yg(J,K,G);if(!(Ej(J,b+652+(c[w>>2]<<4)|0)|0)){e=+ji(b)*.5;d=-+sf(+Ul(J),e);Ze(K,d,-+sf(+ki(J),e));Dj(J,K);Cj(b+652+(c[w>>2]<<4)|0,J);c[s>>2]=0}a[F>>0]=0}b=c[x>>2]|0;if((b|0)!=0?bt(b+652+(c[w>>2]<<4)|0)|0:0){b=c[x>>2]|0;I=b+652+(c[w>>2]<<4)|0;c[J>>2]=c[I>>2];c[J+4>>2]=c[I+4>>2];c[J+8>>2]=c[I+8>>2];c[J+12>>2]=c[I+12>>2]}else{rl(J,0.0,0.0,0.0,0.0);b=c[x>>2]|0}if(!b){wl(K);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}else{nf(L,b+20|0,J);nf(M,(c[x>>2]|0)+20|0,J+8|0);Yg(K,L,M);b=N+6700|0;c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2]}L=N+6700|0;M=N+6708|0;e=+sf(+g[L>>2]+1.0,+g[M>>2]);g[L>>2]=e;g[M>>2]=e;if(ct(b)|0)Bb(12201,5025,3222,11956);else{c[N+6716>>2]=0;l=O;return}}function $h(a){a=a|0;a=(a|0)==0?(c[11106]|0)+208|0:a;if(!(+g[a>>2]>=-256.0e3))a=0;else a=+g[a+4>>2]>=-256.0e3;return a|0}function ai(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;h=c[11106]|0;k=h+6500|0;b=c[k>>2]|0;do if(((b|0)!=0?(d=c[b+100>>2]|0,(d|0)==(c[h+6464>>2]|0)):0)?(c[h+6496>>2]|0)==1:0){Sg(d);b=c[k>>2]|0;if(b|0?(i=c[b+624>>2]|0,i|0):0){if(!(a[h+216>>0]|0)){Zg();c[k>>2]=0;break}lf(f,h+208|0,h+6484|0);b=i+12|0;if(!(!(+g[b>>2]!=+g[f>>2])?!(+g[i+16>>2]!=+g[f+4>>2]):0)){ll(i);h=c[f+4>>2]|0;i=b;c[i>>2]=c[f>>2];c[i+4>>2]=h}dj(c[k>>2]|0);break}Bb(12293,5025,3239,12338)}else j=13;while(0);if((j|0)==13){b=c[h+6492>>2]|0;if((b|0?(e=c[b+100>>2]|0,(e|0)==(c[h+6464>>2]|0)):0)?(Sg(e),(a[h+216>>0]|0)==0):0)Zg();c[k>>2]=0}l=m;return}function bi(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;g[(c[11106]|0)+10600>>2]=0.0;if(a|0){Hs(b);tt(b);a=Sf(a,12445)|0;if(a|0){Naa(c[b+8>>2]|0,1,c[b>>2]|0,a)|0;Daa(a)|0}Ms(b)}l=d;return}function ci(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;g=m+16|0;h=m+8|0;i=m;k=c[11106]|0;j=k+6384|0;k=k+5436|0;d=c[j>>2]|0;a:while(1){if((d|0)>0)e=d;else{d=0;break}while(1){f=e;e=e+-1|0;d=c[(ni(j,e)|0)>>2]|0;if(a[d+144>>0]|0?(c[d+8>>2]&512|0)==0:0)break;if((f|0)<=1){d=0;break a}}lf(h,d+500|0,k);nf(i,d+508|0,k);Yg(g,h,i);if(Gj(g,b)|0)break;else d=e}l=m;return d|0}function di(){var a=0,b=0,d=0,e=0;a=c[11106]|0;b=c[a+6540>>2]|0;a:do if((b|0)>0){e=c[a+6548>>2]|0;while(1){d=b;b=b+-1|0;a=c[e+(b*36|0)+4>>2]|0;if(a|0?c[a+8>>2]&134217728|0:0)break a;if((d|0)<=1){a=0;break}}}else a=0;while(0);return a|0}function ei(a,b){a=a|0;b=b|0;a:do if((c[a+624>>2]|0)==(b|0))a=1;else while(1){if((a|0)==(b|0)){a=1;break a}a=c[a+620>>2]|0;if(!a){a=0;break}}while(0);return a|0}function fi(a){a=a|0;return (c[a>>2]|0)==0|0}function gi(a,b,c){a=+a;b=+b;c=+c;return +(ac?c:a)}function hi(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]/+g[c>>2],+g[b+4>>2]/+g[c+4>>2]);return}function ii(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function ji(a){a=a|0;return +(+g[(c[11106]|0)+6232>>2]*+g[a+612>>2])}function ki(a){a=a|0;return +(+g[a+12>>2]-+g[a+4>>2])}function li(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+112|0;a=a+248|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function mi(a,b){a=a|0;b=+b;var c=0.0,d=0;d=a+108|0;a=a+244|0;c=+g[d>>2]+ +g[a>>2];g[d>>2]=b;g[a>>2]=c-b;return}function ni(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function oi(b){b=b|0;var d=0,e=0,f=0;f=(c[11106]|0)+6384|0;d=c[f>>2]|0;a:do if((d|0)>0){while(1){e=d;d=d+-1|0;if(((c[(ni(f,d)|0)>>2]|0)!=(b|0)?a[(c[(ni(f,d)|0)>>2]|0)+145>>0]|0:0)?(c[(c[(ni(f,d)|0)>>2]|0)+8>>2]&16777216|0)==0:0)break;if((e|0)<=1)break a}dj(ft(c[(ni(f,d)|0)>>2]|0)|0)}while(0);return}function pi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))ej(a,Nt(a,b)|0);c[a>>2]=b;return}function qi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))$u(a,av(a,b)|0);c[a>>2]=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=(c[11106]|0)+6540|0;if(!(fi(h)|0)){b=c[h>>2]|0;a:do if((a|0)!=0&(b|0)>0){f=a+624|0;e=0;while(1){b=c[(Uj(h,e)|0)+4>>2]|0;if(b|0){b=c[b+8>>2]|0;if(!(b&67108864))break;if(!(b&16777216)){b=c[h>>2]|0;if((e|0)<(b|0))b=e;else{g=e;i=b;break a}do{if(!(c[(Uj(h,b)|0)+4>>2]|0))d=0;else{d=c[(c[(Uj(h,b)|0)+4>>2]|0)+624>>2]|0;d=(d|0)==(c[f>>2]|0)}b=b+1|0;a=c[h>>2]|0}while(!(d|(b|0)>=(a|0)));if(!d){g=e;i=a;break a}}}b=e+1|0;a=c[h>>2]|0;if((b|0)<(a|0))e=b;else{g=b;i=a;break a}}Bb(7165,5025,4851,7217)}else{g=0;i=b}while(0);if((g|0)<(i|0))vk(g)}return}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;f=a;e=c[f+4>>2]|0;a=d+6608|0;c[a>>2]=c[f>>2];c[a+4>>2]=e;c[d+6568>>2]=b|0?b:1;return}function ti(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,k=0,m=0.0,n=0.0,o=0.0,p=0.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,H=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=l;l=l+256|0;ga=ka+80|0;fa=ka+64|0;ha=ka+248|0;k=ka+56|0;G=ka+224|0;y=ka+216|0;w=ka+48|0;x=ka+232|0;O=ka+16|0;N=ka+176|0;P=ka+160|0;da=ka;K=ka+40|0;L=ka+32|0;ea=ka+144|0;V=ka+136|0;W=ka+128|0;X=ka+120|0;Y=ka+112|0;Z=ka+104|0;_=ka+96|0;$=ka+208|0;aa=ka+192|0;ja=c[11106]|0;if(!b)Bb(7414,5025,5569,32101);if(!(a[ja>>0]|0))Bb(6581,5025,5570,32101);q=ja+6372|0;if((c[ja+6376>>2]|0)==(c[q>>2]|0))Bb(7425,5025,5571,32101);h=kk(b)|0;c[ha>>2]=h;if(!h){if(!(c[ja+6568>>2]|0)){Ze(fa,0.0,0.0);i=fa;h=c[i>>2]|0;i=c[i+4>>2]|0}else{i=ja+6608|0;h=c[i>>2]|0;i=c[i+4>>2]|0;ca=fa;c[ca>>2]=h;c[ca+4>>2]=i}ca=k;c[ca>>2]=h;c[ca+4>>2]=i;c[ga>>2]=c[k>>2];c[ga+4>>2]=c[k+4>>2];h=Yk(b,ga,f)|0;c[ha>>2]=h}k=(f&512|0)==0?f:f|6;if((k&25165824|0)==8388608)Bb(7459,5025,5586,32101);u=c[q>>2]|0;f=c[h+532>>2]|0;ca=(f|0)!=(u|0);i=h+8|0;if(ca){c[i>>2]=k;ba=k}else ba=c[i>>2]|0;i=(f|0)<(u+-1|0);C=(c[h+188>>2]|0)==1;F=(ba&67108864|0)!=0;if(F){Q=Uj(ja+6540|0,c[ja+6552>>2]|0)|0;h=c[ha>>2]|0;Q=i|(c[h+164>>2]|0)!=(c[Q>>2]|0)|(h|0)!=(c[Q+4>>2]|0)}else Q=i;U=C|Q;a[h+150>>0]=U&1;R=(e|0)!=0;a[h+151>>0]=R&1;if(U)Zk(h,8,1);h=ja+6408|0;if(_k(h)|0)A=0;else A=c[($k(h)|0)>>2]|0;if(ca)S=ba&83886080|0?A:0;else S=c[(c[ha>>2]|0)+620>>2]|0;T=(S|0)!=0;t=ba&16777216;U=(t|0)==0;if(!(U|T))Bb(7496,5025,5612,32101);al(h,ha);bl(c[ha>>2]|0);cl(c[ha>>2]|0,1);if(F){J=ja+6552|0;M=Uj(ja+6540|0,c[J>>2]|0)|0;c[M+4>>2]=c[ha>>2];tk(J,M);c[(c[ha>>2]|0)+164>>2]=c[M>>2]}if(U&C)c[(c[ha>>2]|0)+644>>2]=0;h=ja+6564|0;i=c[h>>2]|0;if(!i)r=0;else{k=c[ha>>2]|0;f=k+192|0;q=c[f>>2]|0;r=(q&i|0)!=0;if(r?(s=ja+6600|0,+rf(s)>9.999999747378752e-06):0){M=ja+6592|0;J=c[M+4>>2]|0;I=k+204|0;c[I>>2]=c[M>>2];c[I+4>>2]=J;I=s;J=c[I+4>>2]|0;M=k+212|0;c[M>>2]=c[I>>2];c[M+4>>2]=J;c[f>>2]=q&-15}else dl(k,ja+6592|0,i);c[h>>2]=0}i=ja+6568|0;k=c[i>>2]|0;if(!k){s=0;q=0}else{f=c[ha>>2]|0;if(!(c[f+196>>2]&k)){h=0;q=0}else{h=+g[ja+6608>>2]>0.0;q=+g[ja+6612>>2]>0.0}el(f,ja+6608|0,k);c[i>>2]=0;s=h}h=ja+6572|0;if(!(c[h>>2]|0)){if(ca){Ze(ga,0.0,0.0);I=ga;J=c[I+4>>2]|0;M=(c[ha>>2]|0)+60|0;c[M>>2]=c[I>>2];c[M+4>>2]=J}}else{i=c[ha>>2]|0;I=ja+6616|0;M=c[I+4>>2]|0;J=i+60|0;c[J>>2]=c[I>>2];c[J+4>>2]=M;if((c[j>>2]=M,+g[j>>2])!=0.0){p=+fl(i);p=p+ +gl(c[ha>>2]|0);M=(c[ha>>2]|0)+64|0;g[M>>2]=p+ +g[M>>2]}c[h>>2]=0}h=ja+6576|0;i=c[h>>2]|0;if(i|0){hl(c[ha>>2]|0,(a[ja+6624>>0]|0)!=0,i);c[h>>2]=0}h=ja+6584|0;if(c[h>>2]|0){il();c[h>>2]=0}h=c[ha>>2]|0;if(a[h+150>>0]|0)Zk(h,8,0);if(ca){I=(t|0)!=0;v=(ba&33554432|0)==0;z=ba&50331648;E=(z|0)==50331648;f=c[ha>>2]|0;c[f+620>>2]=S;c[f+636>>2]=f;k=f+632|0;c[k>>2]=f;h=f+628|0;c[h>>2]=f;i=f+624|0;c[i>>2]=f;D=I^1;if(!(E|(D|T^1)))c[i>>2]=c[S+624>>2];B=(ba&134217728|0)==0;if((ba&83886080|0)==0|B&T^1)h=f;else{i=c[S+628>>2]|0;c[k>>2]=i;ia=60}while(1){if((ia|0)==60){ia=0;c[h>>2]=i;h=c[f+636>>2]|0}if(!(c[h+8>>2]&8388608))break;i=c[h+620>>2]|0;h=f+636|0;ia=60}a[f+144>>0]=1;c[f+152>>2]=0;J=ja+6432|0;M=c[J>>2]|0;c[J>>2]=M+1;c[f+156>>2]=M;c[f+160>>2]=0;If(fa,-3402823466385288598117041.0e14,-3402823466385288598117041.0e14,3402823466385288598117041.0e14,3402823466385288598117041.0e14);$i(ga,fa);M=c[ha>>2]|0;J=M+484|0;c[J>>2]=c[ga>>2];c[J+4>>2]=c[ga+4>>2];c[J+8>>2]=c[ga+8>>2];c[J+12>>2]=c[ga+12>>2];c[M+532>>2]=u;jl(M+472|0,1);do if(!I){M=(ba&201326592|0)==67108864;h=c[ha>>2]|0;c[h+92>>2]=c[(M?ja+5396|0:ja+5364|0)>>2];if(M){i=ja+5400|0;break}else{i=ja+5368|0;break}}else{h=c[ha>>2]|0;c[h+92>>2]=c[ja+5388>>2];i=ja+5392|0}while(0);M=c[i>>2]|0;c[h+96>>2]=M;u=ja+5356|0;H=c[u+4>>2]|0;J=h+84|0;c[J>>2]=c[u>>2];c[J+4>>2]=H;if((ba&83951616|0)==16777216&(c[j>>2]=M,+g[j>>2])==0.0){if(!(ba&1024))m=0.0;else m=+g[ja+5360>>2];Ze(ga,0.0,m);h=c[ha>>2]|0;H=ga;J=c[H+4>>2]|0;M=h+84|0;c[M>>2]=c[H>>2];c[M+4>>2]=J}H=(ba&1|0)!=0;M=H^1;J=(ba&32|0)==0;if(J&M){kl(ga,h);h=c[ha>>2]|0;do if(!(a[h+148>>0]|0)){if((c[ja+6440>>2]|0)!=(h|0))break;if(!(gh(ga,ga+8|0,1)|0))break;if(!(a[ja+973>>0]|0))break;h=c[ha>>2]|0;ia=78}else ia=78;while(0);if((ia|0)==78){u=h+147|0;a[u>>0]=a[u>>0]^1;ll(h);dj(c[ha>>2]|0)}h=c[ha>>2]|0}else a[h+147>>0]=0;a[h+148>>0]=0;ml(ga,h);k=c[ha>>2]|0;u=ga;i=c[u+4>>2]|0;h=k+52|0;c[h>>2]=c[u>>2];c[h+4>>2]=i;h=k+188|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;do if((ba&100663296|0)==0|Q^1){i=ba&64;h=k}else{c[h>>2]=1;h=ba&64;if(!h){i=0;h=k;break}if(!s){g[k+36>>2]=0.0;g[k+28>>2]=0.0}if(!q){g[k+40>>2]=0.0;g[k+32>>2]=0.0}Ze(ga,0.0,0.0);u=c[ha>>2]|0;f=ga;t=c[f+4>>2]|0;i=u+52|0;c[i>>2]=c[f>>2];c[i+4>>2]=t;i=h;h=u}while(0);nl(G,h,h+52|0);Ze(y,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;do if(!i)ia=97;else{if(a[h+147>>0]|0){ia=97;break}if(!s){u=c[G>>2]|0;c[y>>2]=u;c[h+36>>2]=u}if(q)break;u=c[G+4>>2]|0;c[y+4>>2]=u;c[h+40>>2]=u}while(0);do if((ia|0)==97){i=(c[h+168>>2]|0)>0;if(!i?(c[h+172>>2]|0)<=0:0)break;if(!(s|i^1)){if(!(a[h+176>>0]|0)){i=h+36|0;m=+g[G>>2]}else{u=h+36|0;i=u;m=+pg(+g[u>>2],+g[G>>2])}g[y>>2]=m;g[i>>2]=m}do if(!q){if((c[h+172>>2]|0)<=0)break;if(!(a[h+176>>0]|0)){i=h+40|0;m=+g[G+4>>2]}else{u=h+40|0;i=u;m=+pg(+g[u>>2],+g[G+4>>2])}g[y+4>>2]=m;g[i>>2]=m}while(0);if(a[h+147>>0]|0)break;ll(h);h=c[ha>>2]|0}while(0);i=h+36|0;f=c[i+4>>2]|0;k=w;c[k>>2]=c[i>>2];c[k+4>>2]=f;c[ga>>2]=c[w>>2];c[ga+4>>2]=c[w+4>>2];ol(fa,h,ga);h=c[ha>>2]|0;k=fa;f=c[k>>2]|0;k=c[k+4>>2]|0;i=h+36|0;c[i>>2]=f;c[i+4>>2]=k;i=a[h+147>>0]|0;if(I|i<<24>>24==0){x=ga;c[x>>2]=f;c[x+4>>2]=k}else{kl(x,h);ch(ga,x);i=c[ha>>2]|0;k=ga;h=i;f=c[k>>2]|0;k=c[k+4>>2]|0;i=a[i+147>>0]|0}x=h+28|0;c[x>>2]=f;c[x+4>>2]=k;if(!(i<<24>>24)){x=h+44|0;w=h+36|0;n=+g[(+g[y>>2]!=3402823466385288598117041.0e14?w:x)>>2];o=+g[(+g[y+4>>2]!=3402823466385288598117041.0e14?w:x)+4>>2];do if(!(ba&16384)){if(!(+g[h+56>>2]>o)){t=0;break}t=(ba&8|0)==0}else t=1;while(0);s=h+133|0;i=t&1;a[s>>0]=i;do if(!(ba&32768)){if(t)m=+g[ja+5452>>2];else m=0.0;f=ba&2048;q=h+132|0;if((ba&8|0)==0?+g[h+52>>2]>n-m:0){k=f>>>11&255;a[q>>0]=k;if(!f){h=k;break}else{ia=126;break}}else{a[q>>0]=0;h=0;break}}else{a[h+132>>0]=1;k=1;ia=126}while(0);do if((ia|0)==126){if(t){h=k;break}i=((ba&8|0)==0?+g[h+56>>2]>o-+g[ja+5452>>2]:0)&1;a[s>>0]=i;h=k}while(0);if(!(i<<24>>24))n=0.0;else n=+g[ja+5452>>2];if(!(h<<24>>24))m=0.0;else m=+g[ja+5452>>2];Ze(ga,n,m);h=c[ha>>2]|0;x=ga;y=c[x+4>>2]|0;ia=h+136|0;c[ia>>2]=c[x>>2];c[ia+4>>2]=y}do if(Q){c[h+184>>2]=-1;if(r|F^1)break;y=(pl(ja+6552|0)|0)+20|0;h=c[ha>>2]|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y}while(0);do if(I){ia=S+348|0;c[h+152>>2]=c[ia>>2];al(ia,ha);if(E|(F|r)){h=c[ha>>2]|0;break}else{h=c[ha>>2]|0;y=S+220|0;x=c[y>>2]|0;y=c[y+4>>2]|0;ia=h+12|0;c[ia>>2]=x;c[ia+4>>2]=y;ia=h+20|0;c[ia>>2]=x;c[ia+4>>2]=y;break}}while(0);do if(+g[h+204>>2]!=3402823466385288598117041.0e14){if(c[h+188>>2]|0){ia=143;break}ii(O,h+36|0,h+212|0);lf(fa,h+204|0,O);ql(ga,ja+5484|0,fa);dl(h,ga,0);ia=152}else ia=143;while(0);do if((ia|0)==143){if(!(ba&268435456)){if(r|F^1|C^1){ia=152;break}o=+g[h+12>>2];p=+g[h+16>>2];rl(ga,o+-1.0,p+-1.0,o+1.0,p+1.0);A=c[ha>>2]|0;sl(fa,A+12|0,A+28|0,A+184|0,ga,0);A=fa;C=c[A+4>>2]|0;ia=(c[ha>>2]|0)+12|0;c[ia>>2]=c[A>>2];c[ia+4>>2]=C;ia=152;break}if(!r)Bb(7559,5025,5821,32101);m=+g[ja+5420>>2];yg(ga);if(!(a[A+340>>0]|0)){p=+g[A+20>>2];rl(fa,m+p,-3402823466385288598117041.0e14,p+ +g[A+28>>2]-m-+g[A+136>>2],3402823466385288598117041.0e14);c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}else{C=A+24|0;o=+g[C>>2];o=o+ +fl(A);p=+g[C>>2];p=p+ +fl(A);rl(fa,-3402823466385288598117041.0e14,o,3402823466385288598117041.0e14,p+ +gl(A));c[ga>>2]=c[fa>>2];c[ga+4>>2]=c[fa+4>>2];c[ga+8>>2]=c[fa+8>>2];c[ga+12>>2]=c[fa+12>>2]}h=c[ha>>2]|0;sl(fa,h+12|0,h+28|0,h+184|0,ga,0);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);do if((ia|0)==152){if(!(E|(v|r))){m=+g[ja+5492>>2];h=ja+6750|0;do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=156;break}sk(ga)}else ia=156;while(0);if((ia|0)==156){y=ja+208|0;A=c[y+4>>2]|0;C=ga;c[C>>2]=c[y>>2];c[C+4>>2]=A}yg(fa);do if(!(a[h>>0]|0)){if(!(a[ja+6751>>0]|0)){ia=161;break}if(c[ja+28>>2]&4|0){ia=161;break}o=+g[ga>>2];p=+g[ga+4>>2];rl(O,o+-16.0,p+-8.0,o+16.0,p+8.0);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}else ia=161;while(0);if((ia|0)==161){n=+g[ga>>2];p=+g[ga+4>>2];o=m*24.0;rl(O,n+-16.0,p+-8.0,o+n,o+p);c[fa>>2]=c[O>>2];c[fa+4>>2]=c[O+4>>2];c[fa+8>>2]=c[O+8>>2];c[fa+12>>2]=c[O+12>>2]}C=c[ha>>2]|0;sl(O,ga,C+28|0,C+184|0,fa,0);C=c[ha>>2]|0;x=O;y=c[x+4>>2]|0;A=C+12|0;c[A>>2]=c[x>>2];c[A+4>>2]=y;if((c[C+184>>2]|0)==-1){Ze(N,2.0,2.0);nf(O,ga,N);y=O;A=c[y+4>>2]|0;C=(c[ha>>2]|0)+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}}h=c[ha>>2]|0;if((z|0)!=0|r)break;if((c[h+168>>2]|0)>=1)break;if((c[h+172>>2]|0)>=1)break;i=ja+4|0;if(!(+g[i>>2]>0.0))break;if(!(+g[ja+8>>2]>0.0))break;ql(ga,ja+5476|0,ja+5484|0);h=c[ha>>2]|0;nf(N,h+12|0,h+28|0);ql(O,N,ga);lf(fa,O,(c[ha>>2]|0)+28|0);h=(c[ha>>2]|0)+12|0;C=fa;A=c[C+4>>2]|0;y=h;c[y>>2]=c[C>>2];c[y+4>>2]=A;lf(O,i,ga);tl(fa,h,O);h=c[ha>>2]|0;y=fa;A=c[y+4>>2]|0;C=h+12|0;c[C>>2]=c[y>>2];c[C+4>>2]=A}while(0);$e(ga,h+12|0);r=c[ha>>2]|0;y=ga;A=c[y+4>>2]|0;C=r+20|0;c[C>>2]=c[y>>2];c[C+4>>2]=A;m=+g[r+28>>2];if((ba&33554496|0)!=0|!(m>0.0))m=+g[ja+6228>>2]*16.0;else m=m*.6499999761581421;g[r+536>>2]=+(~~m|0);q=r+700|0;h=c[q>>2]|0;do if((h|0)==2147483647)h=2147483647;else{C=c[r+684>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+692>>2]=h;f=r+704|0;h=c[f>>2]|0;k=r+688|0;do if((h|0)==2147483647)h=2147483647;else{C=c[k>>2]|0;i=C+1|0;if((C|0)==-1){h=2147483647;break}h=(i+h|0)%(i|0)|0}while(0);c[r+696>>2]=h;c[k>>2]=-1;c[r+684>>2]=-1;c[f>>2]=2147483647;c[q>>2]=2147483647;ul(ga,r);s=ga;u=c[s+4>>2]|0;h=(c[ha>>2]|0)+108|0;c[h>>2]=c[s>>2];c[h+4>>2]=u;Ze(ga,3402823466385288598117041.0e14,3402823466385288598117041.0e14);h=c[ha>>2]|0;u=ga;s=c[u+4>>2]|0;t=h+116|0;c[t>>2]=c[u>>2];c[t+4>>2]=s;t=((z|0)==0|F)&((ba&4096|0)==0&Q);c[O>>2]=-1;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;c[N+12>>2]=0;s=ba>>>17&1;u=ja+6228|0;p=+g[u>>2];p=+(~~+pg(p*1.350000023841858,p*.20000000298023224+(+g[h+92>>2]+1.0))|0);if(!(a[h+147>>0]|0)){vl(h,G,O,s+1|0,N);h=c[ha>>2]|0}yv(c[h+616>>2]|0);G=c[(c[ha>>2]|0)+616>>2]|0;c[G+36>>2]=(a[ja+5497>>0]|0?2:0)|d[ja+5496>>0];cw(G,(c[(c[ja+6224>>2]|0)+68>>2]|0)+4|0);wl(P);if(E|(F|D))Yi(P,P+8|0,1);else Yi(S+484|0,S+492|0,1);do if(!B){h=c[ha>>2]|0;if((h|0)!=(di()|0))break;G=c[h+616>>2]|0;Hw(G,P,P+8|0,Lf(41,+g[ja+6916>>2])|0,0.0,15)}while(0);r=ja+6720|0;h=c[r>>2]|0;i=c[ha>>2]|0;if((h|0)==(i|0)){xl(ga,h);yl(ga,+g[u>>2]);if(!(Ej(ga,P)|0)){F=c[(c[ha>>2]|0)+616>>2]|0;G=Lf(44,+g[ja+6728>>2]*.25)|0;Hw(F,ga,ga+8|0,G,+g[ja+5364>>2],15)}i=c[ha>>2]|0}o=+g[i+92>>2];n=+g[i+96>>2];do if(t)f=1;else{h=c[ja+6664>>2]|0;if(!h){f=0;break}f=(c[i+628>>2]|0)==(c[h+628>>2]|0)}while(0);kl(da,i);h=c[ha>>2]|0;do if(!(a[h+147>>0]|0)){h=Lf(zl(ba)|0,1.0)|0;i=ja+6588|0;if(c[i>>2]|0){h=~~(+Kf(+g[ja+6652>>2])*255.0+.5)<<24|h&16777215;c[i>>2]=0}K=c[ha>>2]|0;L=c[K+616>>2]|0;Ze(fa,0.0,+fl(K));nf(ga,K+20|0,fa);K=c[ha>>2]|0;nf(ea,K+20|0,K+28|0);Hw(L,ga,ea,h,o,H?15:12);h=Lf((a[(c[ha>>2]|0)+147>>0]|0)==0?(f?11:10):12,1.0)|0;if(!H)Hw(c[(c[ha>>2]|0)+616>>2]|0,da,da+8|0,h,o,3);if(ba&1024|0){Al(ga,c[ha>>2]|0);xl(fa,c[ha>>2]|0);Cj(ga,fa);L=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(13,1.0)|0;Hw(L,ga,ga+8|0,h,H?o:0.0,3);h=ja+5416|0;do if(+g[h>>2]>0.0){i=c[ha>>2]|0;if(!(+g[ga+12>>2]<+g[i+24>>2]+ +g[i+32>>2]))break;K=c[i+616>>2]|0;Bl(fa,ga);Cl(ea,ga);L=Lf(5,1.0)|0;Fw(K,fa,ea,L,+g[h>>2])}while(0)}h=c[ha>>2]|0;if(a[h+132>>0]|0){Dl(1);h=c[ha>>2]|0}if(a[h+133>>0]|0)Dl(0);if(!(ba&2)){m=o+n;k=ga+4|0;i=0;while(1){f=c[ha>>2]|0;h=f+20|0;nf(fa,h,f+28|0);El(ga,h,fa,1016+(i*24|0)|0);h=c[(c[ha>>2]|0)+616>>2]|0;f=1016+(i*24|0)+8|0;q=(i|0)!=0;if(q)Ze(V,n,p);else Ze(V,p,n);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);h=c[(c[ha>>2]|0)+616>>2]|0;if(q)Ze(V,p,n);else Ze(V,n,p);ii(ea,f,V);nf(fa,ga,ea);zj(h,fa);L=c[(c[ha>>2]|0)+616>>2]|0;Ze(fa,+g[ga>>2]+m*+g[f>>2],+g[k>>2]+m*+g[1016+(i*24|0)+12>>2]);yw(L,fa,o,c[1016+(i*24|0)+16>>2]|0,c[1016+(i*24|0)+20>>2]|0);Fl(c[(c[ha>>2]|0)+616>>2]|0,c[N+(i<<2)>>2]|0);if((i|0)==(s|0))break;else i=i+1|0}}if(n>0.0){K=c[ha>>2]|0;L=c[K+616>>2]|0;N=K+20|0;nf(ga,N,K+28|0);Gw(L,N,ga,Lf(5,1.0)|0,o,15,n)}h=c[O>>2]|0;if((h|0)!=-1){Gl(ga,c[ha>>2]|0,h,p,0.0);N=c[(c[ha>>2]|0)+616>>2]|0;O=Lf(29,1.0)|0;Fw(N,ga,ga+8|0,O,+pg(1.0,n))}h=ja+5416|0;if(H|!(+g[h>>2]>0.0))break;N=c[(c[ha>>2]|0)+616>>2]|0;Bl(fa,da);O=ja+5368|0;Ze(ea,+g[O>>2],-1.0);nf(ga,fa,ea);Cl(W,da);Ze(X,-+g[O>>2],-1.0);nf(V,W,X);O=Lf(5,1.0)|0;Fw(N,ga,V,O,+g[h>>2])}else{i=ja+5416|0;k=c[i>>2]|0;c[i>>2]=c[h+96>>2];if(f)h=(a[ja+6750>>0]|0)==0?11:12;else h=12;O=Lf(h,1.0)|0;N=da;G=c[N+4>>2]|0;F=K;c[F>>2]=c[N>>2];c[F+4>>2]=G;F=da+8|0;G=c[F+4>>2]|0;N=L;c[N>>2]=c[F>>2];c[N+4>>2]=G;c[fa>>2]=c[K>>2];c[fa+4>>2]=c[K+4>>2];c[ga>>2]=c[L>>2];c[ga+4>>2]=c[L+4>>2];uj(fa,ga,O,1,o);c[i>>2]=k}while(0);i=c[r>>2]|0;h=c[ha>>2]|0;if((i|0)==(h|0)){xl(ga,i);yl(ga,+g[u>>2]);if(Ej(ga,P)|0)yl(ga,-2.0-+g[u>>2]);P=c[(c[ha>>2]|0)+616>>2]|0;h=Lf(44,+g[ja+6728>>2])|0;Gw(P,ga,ga+8|0,h,+g[ja+5364>>2],-1,3.0);h=c[ha>>2]|0}N=h+36|0;O=c[N+4>>2]|0;P=h+44|0;c[P>>2]=c[N>>2];c[P+4>>2]=O;g[h+68>>2]=+g[h+84>>2]-+g[h+108>>2];n=+g[h+88>>2]-+g[h+112>>2];n=n+ +fl(h);n=n+ +gl(c[ha>>2]|0);h=c[ha>>2]|0;g[h+72>>2]=n;n=+g[h+108>>2];o=+g[h+84>>2];m=+g[h+60>>2];if(!(m!=0.0))m=+g[h+28>>2]-+g[h+136>>2];g[h+76>>2]=-n-o+m;m=+g[h+64>>2];if(!(m!=0.0))m=+g[h+32>>2]-+g[h+140>>2];g[h+80>>2]=-+g[h+112>>2]-+g[h+88>>2]+m;o=o+0.0-n;g[h+456>>2]=o;g[h+460>>2]=0.0;g[h+464>>2]=0.0;p=+fl(h);p=p+ +gl(c[ha>>2]|0);i=c[ha>>2]|0;Ze(fa,o+0.0,p+ +g[i+88>>2]-+g[i+112>>2]);nf(ga,h+20|0,fa);i=c[ha>>2]|0;P=ga;O=c[P>>2]|0;P=c[P+4>>2]|0;h=i+236|0;c[h>>2]=O;c[h+4>>2]=P;h=i+220|0;c[h>>2]=O;c[h+4>>2]=P;h=i+228|0;c[h>>2]=O;c[h+4>>2]=P;h=i+244|0;c[h>>2]=O;c[h+4>>2]=P;h=i+252|0;a[i+320>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;a[i+321>>0]=+Hl()>0.0&1;h=i+336|0;c[i+332>>2]=c[h>>2];c[h>>2]=0;a[i+340>>0]=0;h=ja+5420|0;g[i+344>>2]=+pg(+g[i+84>>2],+g[h>>2]);g[i+268>>2]=(c[j>>2]=P,+g[j>>2])+-9999.0;pi(i+348|0,0);i=c[ha>>2]|0;c[i+364>>2]=0;if(T)k=c[S+364>>2]|0;else k=0;c[i+368>>2]=k;c[i+372>>2]=1;c[i+376>>2]=c[i+536>>2];g[i+380>>2]=-1.0;Il(i+384|0,0);Jl((c[ha>>2]|0)+396|0,0);Jl((c[ha>>2]|0)+408|0,0);P=c[ha>>2]|0;c[P+468>>2]=0;c[P+272>>2]=0;c[P+276>>2]=0;c[P+360>>2]=P+588;Kl(P+420|0,0);ng((c[ha>>2]|0)+540|0,3,+g[h>>2],Q);do if(I){h=c[ha>>2]|0;i=h+372|0;k=c[S+372>>2]|0;if((c[i>>2]|0)==(k|0))break;c[i>>2]=k;Ll(h+384|0,i)}while(0);k=c[ha>>2]|0;h=k+168|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;h=k+172|0;i=c[h>>2]|0;if((i|0)>0)c[h>>2]=i+-1;if(t){dj(k);Jh(c[ha>>2]|0,0)}if(!H){h=c[ha>>2]|0;Q=h+372|0;k=c[Q>>2]|0;c[Q>>2]=k|16;Q=h+324|0;c[Q>>2]=(c[Q>>2]|0)+1;Q=h+328|0;c[Q>>2]=c[Q>>2]<<1;if(J){h=Eg(h,7581,0)|0;i=ja+5404|0;nf(ea,(c[ha>>2]|0)+20|0,i);Ze(V,1.0,1.0);nf(ga,ea,V);nf(Y,(c[ha>>2]|0)+20|0,i);p=+g[u>>2];Ze(Z,p,p);nf(X,Y,Z);Ze(_,1.0,1.0);lf(W,X,_);Yg(fa,ga,W);dh(fa,h,0)|0;if(Ml(fa,h,0,0,0)|0)a[(c[ha>>2]|0)+148>>0]=1;Bj(fa,h,1);nf($,(c[ha>>2]|0)+20|0,i);_=a[(c[ha>>2]|0)+147>>0]|0?1:3;c[ga>>2]=c[$>>2];c[ga+4>>2]=c[$+4>>2];wj(ga,_,1.0)}do if(R){p=(+fl(c[ha>>2]|0)+-4.0)*.5;$=Eg(c[ha>>2]|0,7591,0)|0;xl(aa,c[ha>>2]|0);Ol(fa,aa);Ze(ea,-2.0-p,p+2.0);nf(ga,fa,ea);if(!(Nl($,ga,p)|0))break;a[e>>0]=0}while(0);aa=c[ha>>2]|0;$=aa+324|0;c[$>>2]=(c[$>>2]|0)+-1;$=aa+328|0;c[$>>2]=c[$>>2]>>1;c[aa+372>>2]=k;tj(ga,b,0,1,-1.0);c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2];m=+g[ja+5404>>2];if(J)p=m+ +g[u>>2]+ +g[ja+5428>>2];else p=m;if(R)n=m+ +g[u>>2]+ +g[ja+5428>>2];else n=m;i=ja+5380|0;o=+g[i>>2];if(o>0.0)n=+Pl(n,p,o);g[fa>>2]=p+ +g[fa>>2];h=fa+8|0;g[h>>2]=+g[h>>2]-n;c[ea>>2]=c[fa>>2];c[ea+4>>2]=c[fa+4>>2];c[ea+8>>2]=c[fa+8>>2];c[ea+12>>2]=c[fa+12>>2];aa=c[ha>>2]|0;n=+g[aa+20>>2]+ +g[aa+28>>2];if(R)m=+ki(da)+-3.0;g[ea+8>>2]=n-m;sj(fa,h,b,0,ga,i,ea)}xl(ga,c[ha>>2]|0);fa=c[ha>>2]|0;h=fa+500|0;c[h>>2]=c[ga>>2];c[h+4>>2]=c[ga+4>>2];c[h+8>>2]=c[ga+8>>2];c[h+12>>2]=c[ga+12>>2];Cj(h,fa+484|0);fa=c[ha>>2]|0;g[fa+516>>2]=+g[da>>2]+ +g[fa+96>>2];p=+g[da+12>>2];p=p+ +gl(fa);fa=c[ha>>2]|0;h=fa+96|0;g[fa+520>>2]=p+ +g[((ba&1024|0)!=0|M?ja+5416|0:h)>>2];p=+g[h>>2];g[fa+524>>2]=+g[fa+20>>2]+ +g[fa+28>>2]-+g[fa+136>>2]-p;g[fa+528>>2]=+g[fa+24>>2]+ +g[fa+32>>2]-+g[fa+140>>2]-p;c[fa+280>>2]=c[fa+100>>2];fa=(gh(da,da+8|0,0)|0)&1;h=c[ha>>2]|0;c[h+284>>2]=fa;fa=h+288|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=c[da+4>>2];c[fa+8>>2]=c[da+8>>2];c[fa+12>>2]=c[da+12>>2]}else h=c[ha>>2]|0;p=+g[h+96>>2];yg(ga);fa=c[ha>>2]|0;o=+g[fa+516>>2]+.5;p=+pg(0.0,+bf(+g[fa+84>>2]*.5-p));g[ga>>2]=+bf(o+p);g[ga+4>>2]=+bf(+g[fa+520>>2]+.5);f=ga+8|0;g[f>>2]=+bf(+g[fa+524>>2]+.5-p);g[ga+12>>2]=+bf(+g[fa+528>>2]+.5);Yi(ga,f,1);f=c[ha>>2]|0;if(ca)a[f+146>>0]=0;ha=f+160|0;c[ha>>2]=(c[ha>>2]|0)+1;c[ja+6580>>2]=0;do if(!U){if(!(ba&1))Bb(7598,5025,6158,32101);if(T)h=a[S+147>>0]|0;else h=0;k=f+147|0;a[k>>0]=h;do if(!(ba&64)){if((c[f+168>>2]|0)>=1)break;if((c[f+172>>2]|0)>=1)break;if(!(+g[f+500>>2]>=+g[f+508>>2]))i=+g[f+504>>2]>=+g[f+512>>2]&1;else i=1;h=(i|h&255)&255;a[k>>0]=h}while(0);if(!(h<<24>>24))break;a[f+144>>0]=0}while(0);if(+g[ja+5352>>2]<=0.0)a[f+144>>0]=0;if((a[f+147>>0]|0)==0?(a[f+144>>0]|0)!=0:0)h=0;else ia=283;do if((ia|0)==283){if((c[f+168>>2]|0)>=1){h=0;break}h=(c[f+172>>2]|0)<1&1}while(0);a[f+149>>0]=h;l=ka;return h<<24>>24==0|0}function ui(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Hs(b);a[d>>0]=0;ht(b,d);l=c;return}function vi(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function wi(a,b,c){a=a|0;b=b|0;c=c|0;a=Ri(Af(c,0,0)|0)|0;if(!a)a=jt(c)|0;return a|0}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;j=m+8|0;i=m;b=m+28|0;d=m+24|0;h=m+20|0;c[i>>2]=b;c[i+4>>2]=d;do if((Raa(f,12357,i)|0)!=2){c[j>>2]=b;c[j+4>>2]=d;if((Raa(f,12367,j)|0)==2){Ze(i,+g[b>>2],+g[d>>2]);ql(j,i,(c[11106]|0)+5372|0);k=c[j+4>>2]|0;f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=k;break}c[k>>2]=h;if((Raa(f,12378,k)|0)==1)a[e+24>>0]=(c[h>>2]|0)!=0&1}else{Ze(i,+g[b>>2],+g[d>>2]);j=i;k=c[j+4>>2]|0;f=e+8|0;c[f>>2]=c[j>>2];c[f+4>>2]=k}while(0);l=m;return}function yi(b,e,f){b=b|0;e=e|0;f=f|0;var 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;r=l;l=l+48|0;o=r+32|0;n=r+24|0;q=r+16|0;p=r+8|0;m=r;k=b+6384|0;if(c[k>>2]|0){i=0;do{j=c[(ni(k,i)|0)>>2]|0;if(!(c[j+8>>2]&256)){h=Ri(c[j+4>>2]|0)|0;if(!h)h=jt(c[j>>2]|0)|0;s=j+20|0;t=c[s+4>>2]|0;u=h+8|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=j+36|0;t=c[u+4>>2]|0;s=h+16|0;c[s>>2]=c[u>>2];c[s+4>>2]=t;a[h+24>>0]=a[j+147>>0]|0}i=i+1|0}while((i|0)!=(c[k>>2]|0))}u=bo(f)|0;j=b+10604|0;pt(f,((c[j>>2]|0)*96|0)+u|0);if(c[j>>2]|0){h=0;do{i=Gi(j,h)|0;b=i+8|0;if(!(+g[b>>2]==3402823466385288598117041.0e14)){t=c[i>>2]|0;u=y9(t,12391)|0;c[m>>2]=c[e>>2];c[m+4>>2]=(u|0)==0?t:u;lg(f,12395,m);u=~~+g[i+12>>2];c[p>>2]=~~+g[b>>2];c[p+4>>2]=u;lg(f,12405,p);u=~~+g[i+20>>2];c[q>>2]=~~+g[i+16>>2];c[q+4>>2]=u;lg(f,12416,q);c[n>>2]=d[i+24>>0];lg(f,12428,n);lg(f,8513,o)}h=h+1|0}while((h|0)!=(c[j>>2]|0))}l=r;return}function zi(a,b){a=a|0;b=b|0;if(!(c[a>>2]|0))bv(a,b);else cv(a,c[a+8>>2]|0,b)|0;return}function Ai(a){a=a|0;return (c[a>>2]|0)==0|0}function Bi(a){a=a|0;var b=0;if(a|0?(b=Tf(a,12442,0,1)|0,b|0):0){st(b);Uf(b)}return}function Ci(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){hx(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Di(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){Mg(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ei(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Fi(a){a=a|0;qt(a);return}function Gi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*28|0)|0;else Bb(14314,39072,1118,14323);return 0}function Hi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ii(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ji(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ki(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Li(a){a=a|0;var b=0;b=0;do{rt(a+(b*12|0)|0);b=b+1|0}while((b|0)!=2);return}function Mi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Ni(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Oi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Pi(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;if(d|0){c[a+4>>2]=0;c[a>>2]=0;Uf(d);c[b>>2]=0}return}function Qi(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0){wt(b);Uf(c[a>>2]|0);c[a>>2]=0}return}function Ri(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+10604|0;a:do if(!(c[d>>2]|0))b=0;else{b=0;while(1){if((c[(Gi(d,b)|0)+4>>2]|0)==(a|0))break;b=b+1|0;if((b|0)==(c[d>>2]|0)){b=0;break a}}b=Gi(d,b)|0}while(0);return b|0}function Si(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=Af(a,0,0)|0;d=d+10616|0;a:do if((c[d>>2]|0)>0){a=0;while(1){if((c[(Ti(d,a)|0)+4>>2]|0)==(b|0))break;a=a+1|0;if((a|0)>=(c[d>>2]|0)){a=0;break a}}a=Ti(d,a)|0}else a=0;while(0);return a|0}function Ti(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*24|0)|0;else Bb(14314,39072,1118,14323);return 0}function Ui(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;Vi(a,(c[a+12>>2]|0)+b|0);d=a+12|0;if(!(Wi(d)|0)){a=Xi(a,b)|0;b=Xi(d,0)|0;qca(a|0,b|0,c[d>>2]<<2|0)|0;Vi(d,0)}return}function Vi(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Et(a,Ft(a,b)|0);c[a>>2]=b;return}function Wi(a){a=a|0;return (c[a>>2]|0)==0|0}function Xi(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<2)|0;else Bb(14314,39072,1118,14323);return 0}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+48|0;f=e+24|0;i=e+16|0;m=e+8|0;k=e;g=Zi()|0;h=g+616|0;j=c[h>>2]|0;o=a;a=c[o+4>>2]|0;n=m;c[n>>2]=c[o>>2];c[n+4>>2]=a;n=b;a=c[n+4>>2]|0;b=k;c[b>>2]=c[n>>2];c[b+4>>2]=a;c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];Yv(j,i,f,d);$i(f,_i((c[h>>2]|0)+60|0)|0);d=g+484|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=e;return}function Zi(){var b=0;b=c[(c[11106]|0)+6436>>2]|0;a[b+146>>0]=1;return b|0}function _i(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<4)|0;else Bb(39063,39072,1128,14585);return 0}function $i(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+4>>2]);Ze(a+8|0,+g[b+8>>2],+g[b+12>>2]);return}function aj(){var a=0,b=0,d=0,e=0;a=l;l=l+16|0;d=a;b=Zi()|0;e=b+616|0;aw(c[e>>2]|0);$i(d,_i((c[e>>2]|0)+60|0)|0);b=b+484|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];l=a;return}function bj(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;h=p;m=c[11106]|0;if(!(a[m>>0]|0))Bb(6581,5025,3944,31931);n=m+6376|0;o=m+6372|0;do if((c[n>>2]|0)!=(c[o>>2]|0)){f=m+200|0;if(c[f>>2]|0?(d=m+10584|0,e=m+10592|0,lf(h,d,e),+rf(h)>9.999999747378752e-05):0){ne[c[f>>2]&127](~~+g[d>>2],~~+g[m+10588>>2]);f=d;i=c[f+4>>2]|0;j=e;c[j>>2]=c[f>>2];c[j+4>>2]=i}if((c[m+6408>>2]|0)!=1)Bb(6595,5025,3956,31931);d=c[m+6436>>2]|0;if(d|0?(a[d+146>>0]|0)==0:0)a[d+144>>0]=0;cj();do if((c[m+6464>>2]|0)==0?(c[m+6448>>2]|0)==0:0){j=c[m+6664>>2]|0;d=(j|0)==0;if(!d?a[j+150>>0]|0:0)break;do if(a[m+968>>0]|0){e=m+6444|0;if(!(c[e>>2]|0)){if(d)break;if(di()|0)break;dj(0);break}else{d=m+6440|0;dj(c[d>>2]|0);i=c[d>>2]|0;Wg(c[i+100>>2]|0,i);a[m+6750>>0]=1;lf(h,m+208|0,(c[e>>2]|0)+20|0);i=c[h+4>>2]|0;j=m+6484|0;c[j>>2]=c[h>>2];c[j+4>>2]=i;d=c[d>>2]|0;if(c[d+8>>2]&4|0)break;if(c[(c[e>>2]|0)+8>>2]&4|0)break;c[m+6500>>2]=d;break}}while(0);if(a[m+969>>0]|0){d=di()|0;e=(d|0)==0;j=m+6384|0;f=c[j>>2]|0;a:do if(e|(f|0)<1)k=29;else{i=m+6440|0;while(1){h=f;f=f+-1|0;e=c[(ni(j,f)|0)>>2]|0;if((e|0)==(d|0))break a;e=(e|0)==(c[i>>2]|0);if(e|(h|0)<2){k=29;break}}}while(0);if((k|0)==29)if(e)d=c[m+6440>>2]|0;ri(d)}}while(0);f=m+6396|0;pi(f,0);h=m+6384|0;ej(f,c[h>>2]|0);if(!(c[h>>2]|0))d=0;else{d=0;do{e=c[(ni(h,d)|0)>>2]|0;if(!((a[e+144>>0]|0)!=0?(c[e+8>>2]&16777216|0)!=0:0))fj(f,e);d=d+1|0}while((d|0)!=(c[h>>2]|0))}if((d|0)==(c[f>>2]|0)){gj(h,f);g[m+228>>2]=0.0;g[m+224>>2]=0.0;d=m+750|0;e=d+118|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));c[n>>2]=c[o>>2];break}else Bb(6626,5025,4020,31931)}while(0);l=p;return}function cj(){var a=0,b=0,d=0,e=0;a=c[11106]|0;d=c[a+6436>>2]|0;if(c[d+468>>2]|0)Ql();aj();e=d+8|0;if(!(c[e>>2]&16777216))Rl();b=a+6408|0;Sl(b);if(c[e>>2]&67108864|0)Tl(a+6552|0);cl(d,0);if(_k(b)|0)a=0;else a=c[($k(b)|0)>>2]|0;bl(a);return}function dj(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[11106]|0;d=f+6664|0;if((c[d>>2]|0)!=(b|0)){c[d>>2]=b;if(!b){a[f+6753>>0]=0;d=0}else{if(a[f+6751>>0]|0)a[f+6749>>0]=1;a[f+6753>>0]=0;d=c[b+644>>2]|0}c[f+6668>>2]=d;a[f+6748>>0]=0;c[f+6740>>2]=0}if(b|0){e=c[b+624>>2]|0;e=(e|0)==0?b:e;b=e+8|0;d=c[b>>2]|0;if((((d&67108864|0)!=0?(c[f+6464>>2]|0)!=0:0)?(g=c[f+6492>>2]|0,(g|0)!=0):0)?(c[g+624>>2]|0)!=(e|0):0){Zg();d=c[b>>2]|0}if(!(d&8192))Vl(e)}return}function ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<2)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<2|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function fj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;al(b,g);d=c[g>>2]|0;do if(a[d+144>>0]|0){d=d+348|0;f=c[d>>2]|0;if((f|0)<=1)if((f|0)==1)d=0;else break;else{j9(xt(d)|0,f,4,1);d=0}do{e=c[(ni((c[g>>2]|0)+348|0,d)|0)>>2]|0;if(a[e+144>>0]|0)fj(b,e);d=d+1|0}while((d|0)!=(f|0))}while(0);l=h;return}function gj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[b>>2]|0;c[b>>2]=c[a>>2];c[a>>2]=f;f=b+4|0;d=c[f>>2]|0;e=a+4|0;c[f>>2]=c[e>>2];c[e>>2]=d;e=b+8|0;d=c[e>>2]|0;b=a+8|0;c[e>>2]=c[b>>2];c[b>>2]=d;return}function hj(){var b=0,d=0,e=0,f=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+128|0;k=C+120|0;m=C+112|0;q=C+80|0;r=C+72|0;s=C+64|0;t=C+56|0;u=C+48|0;v=C+40|0;y=C+32|0;z=C+24|0;n=C+16|0;o=C+8|0;p=C;B=c[11106]|0;if(!(a[B>>0]|0))Bb(6581,5025,4034,31924);b=c[B+6376>>2]|0;d=B+6372|0;if((b|0)!=(c[d>>2]|0)){bj();b=c[d>>2]|0}c[B+6380>>2]=b;if(+g[B+5352>>2]>0.0){c[B+888>>2]=0;i=B+884|0;c[i>>2]=0;j=B+880|0;c[j>>2]=0;b=B+6892|0;ij(b);d=c[B+6720>>2]|0;if(!d)f=0;else f=(c[d+8>>2]&8192|0)==0?d:0;e=B+6384|0;if(c[e>>2]|0){d=0;do{h=c[(ni(e,d)|0)>>2]|0;if((a[h+144>>0]|0?(c[h+188>>2]|0)<1:0)?!((h|0)==(f|0)?1:(c[h+8>>2]&16777216|0)!=0):0)jj(h);d=d+1|0}while((d|0)!=(c[e>>2]|0))}if((f|0?a[f+144>>0]|0:0)?(c[f+188>>2]|0)<1:0)jj(f);Ui(b);Xe(k);Xe(m);d=q+32|0;e=q;do{Xe(e);e=e+8|0}while((e|0)!=(d|0));if(a[B+232>>0]|0?(w=B+140|0,x=q+16|0,bA(c[w>>2]|0,c[B+7036>>2]|0,k,m,q,x)|0):0){lf(r,B+208|0,k);c[s>>2]=c[(c[w>>2]|0)+4>>2];D=+g[B+5492>>2];w=B+6920|0;cw(w,s);h=c[s>>2]|0;Ze(v,1.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,1.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);k=q+24|0;Xw(w,h,t,y,x,k,805306368);h=c[s>>2]|0;Ze(v,2.0,0.0);af(u,v,D);nf(t,r,u);Ze(o,2.0,0.0);af(n,o,D);nf(z,r,n);af(p,m,D);nf(y,z,p);Xw(w,h,t,y,x,k,805306368);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,x,k,-16777216);z=c[s>>2]|0;af(u,m,D);nf(t,r,u);Xw(w,z,r,t,q,q+8|0,-1);ew(w)}if(!(kj(B+6944|0)|0))lj(b,B+6920|0);d=B+6872|0;mj(b,d);c[j>>2]=c[B+6884>>2];c[i>>2]=c[B+6888>>2];if((c[B+6880>>2]|0)>0?(A=c[B+184>>2]|0,A|0):0)ie[A&127](d)}l=C;return}function ij(a){a=a|0;var b=0;b=0;do{Vi(a+(b*12|0)|0,0);b=b+1|0}while((b|0)!=2);return}function jj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=b+888|0;c[d>>2]=(c[d>>2]|0)+1;if(!(c[a+8>>2]&33554432))zt(b+6892|0,a);else zt(b+6904|0,a);return}function kj(a){a=a|0;return (c[a>>2]|0)==0|0}function lj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+16|0;e=f;c[e>>2]=b;do if(!(At(b)|0)){d=Bt(b)|0;if(((c[d>>2]|0)==0?(c[d+24>>2]|0)==0:0)?(Ct(b),At(b)|0):0)break;d=c[b+24>>2]|0;if(d|0?(c[b+52>>2]|0)!=((c[b+32>>2]|0)+(d*20|0)|0):0)Bb(12448,5025,3855,12563);g=c[b+12>>2]|0;if(g|0?(c[b+56>>2]|0)!=((c[b+20>>2]|0)+(g<<1)|0):0)Bb(12585,5025,3856,12563);if((c[b+48>>2]|0)!=(d|0))Bb(12700,5025,3857,12563);if(d>>>0<65536){Dt(a,e);break}else Bb(12760,5025,3868,12563)}while(0);l=f;return}function mj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a[d>>0]=1;i=c[b>>2]|0;f=(i|0)>0;if(f)e=c[b+8>>2]|0;else e=0;c[d+4>>2]=e;c[d+8>>2]=i;h=d+16|0;c[h>>2]=0;g=d+12|0;c[g>>2]=0;if(f){d=c[b+8>>2]|0;e=0;b=0;f=0;do{j=c[d+(e<<2)>>2]|0;b=b+(c[j+24>>2]|0)|0;f=f+(c[j+12>>2]|0)|0;e=e+1|0}while((e|0)<(i|0));c[g>>2]=b;c[h>>2]=f}return}function nj(b,c){b=b|0;c=c|0;var d=0;d=(c|0)==0?-1:c;a:do if(d>>>0>b>>>0)while(1){switch(a[b>>0]|0){case 0:break a;case 35:{c=b+1|0;if((a[c>>0]|0)==35)break a;else b=c;break}default:b=b+1|0}if(b>>>0>=d>>>0)break a}while(0);return b|0}function oj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=c[11106]|0;if(a[f+10628>>0]|0){c[e>>2]=d;d=c[f+10632>>2]|0;if(!d)hg(c[f+10636>>2]|0,b,e);else O9(d,b,e)|0}l=g;return}function pj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0.0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!f){if(!e)e=d+(v9(d)|0)|0}else e=nj(d,e)|0;if((e-d|0)>0?(f=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(f,i,j,b,Lf(0,1.0)|0,d,e,0.0,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function qj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o+16|0;m=o;f=c[11106]|0;h=c[f+6436>>2]|0;if(!e)e=nj(d,0)|0;if(!b)k=0;else{p=+g[b+4>>2];j=h+268|0;k=p>+g[j>>2]+1.0;g[j>>2]=p}f=f+10640|0;b=c[f>>2]|0;h=c[h+272>>2]|0;if((b|0)>(h|0)){c[f>>2]=h;b=h}j=h-b<<2;i=d;while(1){a:do if(i>>>0>>0){b=i;while(1){if((a[b>>0]|0)==10)break a;b=b+1|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);h=(b|0)==0;b=h?e:b;do if(!((b|0)==0|h&(b|0)==(i|0))){f=b-i|0;if(k|(i|0)!=(d|0)){c[m>>2]=j;c[m+4>>2]=46144;c[m+8>>2]=f;c[m+12>>2]=i;oj(12876,m);break}else{c[n>>2]=f;c[n+4>>2]=d;oj(12885,n);break}}while(0);if(h)break;else i=b+1|0}l=o;return}function rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=+f;var h=0,i=0,j=0.0,k=0;h=c[11106]|0;i=c[h+6436>>2]|0;if(!e)e=d+(v9(d)|0)|0;if((e-d|0)>0?(k=c[i+616>>2]|0,i=c[h+6224>>2]|0,j=+g[h+6228>>2],Qw(k,i,j,b,Lf(0,1.0)|0,d,e,f,0),a[h+10628>>0]|0):0)qj(b,d,e);return}function sj(b,d,e,f,h,i,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;k=k|0;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;w=y;x=y+16|0;s=nj(e,f)|0;if((s|0)!=(e|0)){t=c[11106]|0;u=c[t+6436>>2]|0;q=b;f=c[q>>2]|0;q=c[q+4>>2]|0;r=v;c[r>>2]=f;c[r+4>>2]=q;if(!h){tj(w,e,s,0,0.0);p=w;q=v;m=+g[w>>2];n=+g[v>>2]}else{n=(c[j>>2]=f,+g[j>>2]);q=h;r=c[q>>2]|0;q=c[q+4>>2]|0;p=w;c[p>>2]=r;c[p+4>>2]=q;p=w;q=v;m=(c[j>>2]=r,+g[j>>2])}f=(k|0)!=0;r=f?k:b;b=f?k+8|0:d;o=+g[b>>2];if(!(n+m>=o))h=+g[v+4>>2]+ +g[w+4>>2]>=+g[b+4>>2];else h=1;if(f){if(+g[q>>2]<+g[r>>2])f=1;else f=+g[v+4>>2]<+g[r+4>>2]&1;f=(f|h&1|0)!=0}else f=h;m=+g[i>>2];if(m>0.0){n=+g[q>>2];g[q>>2]=+pg(n,n+m*(+g[d>>2]-n-+g[p>>2]))}m=+g[i+4>>2];if(m>0.0){i=v+4|0;n=+g[i>>2];g[i>>2]=+pg(n,n+m*(+g[d+4>>2]-n-+g[w+4>>2]))}if(f){If(x,+g[r>>2],+g[r+4>>2],o,+g[b+4>>2]);d=c[u+616>>2]|0;w=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(d,w,o,v,Lf(0,1.0)|0,e,s,0.0,x)}else{w=c[u+616>>2]|0;x=c[t+6224>>2]|0;o=+g[t+6228>>2];Qw(w,x,o,v,Lf(0,1.0)|0,e,s,0.0,0)}if(a[t+10628>>0]|0)qj(v,e,s)}l=y;return}function tj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=c[11106]|0;if(e)d=nj(b,d)|0;e=c[i+6224>>2]|0;h=+g[i+6228>>2];if((d|0)==(b|0))Ze(a,0.0,h);else{dA(j,e,h,3402823466385288598117041.0e14,f,b,d,0);f=+g[j>>2];if(f>0.0){f=f-h/+g[e>>2];g[j>>2]=f}g[j>>2]=+(~~(f+.949999988079071)|0);i=j;b=c[i+4>>2]|0;j=a;c[j>>2]=c[i>>2];c[j+4>>2]=b}l=k;return}function uj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+32|0;j=o+24|0;k=o+16|0;m=o+8|0;n=o;p=c[11106]|0;i=(c[p+6436>>2]|0)+616|0;Hw(c[i>>2]|0,a,b,d,f,15);h=+g[p+5416>>2];if(h>0.0&e){p=c[i>>2]|0;Ze(k,1.0,1.0);nf(j,a,k);Ze(n,1.0,1.0);nf(m,b,n);Gw(p,j,m,Lf(6,1.0)|0,f,15,h);p=c[i>>2]|0;Gw(p,a,b,Lf(5,1.0)|0,f,15,h)}l=o;return}function vj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0,i=0,j=0,k=0.0,m=0,n=0;m=l;l=l+32|0;e=m+24|0;f=m+16|0;h=m+8|0;i=m;j=c[11106]|0;k=+g[j+5416>>2];if(k>0.0){j=(c[j+6436>>2]|0)+616|0;n=c[j>>2]|0;Ze(f,1.0,1.0);nf(e,a,f);Ze(i,1.0,1.0);nf(h,b,i);Gw(n,e,h,Lf(6,1.0)|0,d,15,k);j=c[j>>2]|0;Gw(j,a,b,Lf(5,1.0)|0,d,15,k)}l=m;return}function wj(a,b,d){a=a|0;b=b|0;d=+d;var e=0.0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0;q=l;l=l+64|0;h=q+48|0;i=q+24|0;j=q+16|0;k=q+8|0;m=q;n=q+40|0;o=q+32|0;s=c[11106]|0;f=c[s+6436>>2]|0;r=+g[s+6228>>2];e=r*.4000000059604645*d;r=r*.5;Ze(i,r,r*d);nf(h,a,i);Xe(i);Xe(j);Xe(k);switch(b|0){case -1:case 4:{Bb(18388,5025,4313,6669);break}case 3:{p=3;break}case 2:{e=-e;p=3;break}case 0:{e=-e;p=5;break}case 1:{p=5;break}default:{}}if((p|0)==3){b=h+4|0;g[b>>2]=+g[b>>2]-e*.25;Ze(n,0.0,1.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.8659999966621399,-.5);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,.8659999966621399,-.5);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}else if((p|0)==5){g[h>>2]=+g[h>>2]-e*.25;Ze(n,1.0,0.0);af(m,n,e);b=m;p=c[b+4>>2]|0;s=i;c[s>>2]=c[b>>2];c[s+4>>2]=p;Ze(n,-.5,.8659999966621399);af(m,n,e);s=m;p=c[s+4>>2]|0;b=j;c[b>>2]=c[s>>2];c[b+4>>2]=p;Ze(n,-.5,-.8659999966621399);af(m,n,e);b=m;p=c[b+4>>2]|0;s=k;c[s>>2]=c[b>>2];c[s+4>>2]=p}s=c[f+616>>2]|0;nf(m,h,i);nf(n,h,j);nf(o,h,k);Mw(s,m,n,o,Lf(0,1.0)|0);l=q;return}function xj(a){a=a|0;var b=0.0,d=0,e=0;e=c[11106]|0;d=c[(c[e+6436>>2]|0)+616>>2]|0;b=+g[e+6228>>2]*.20000000298023224;Ow(d,a,b,Lf(0,1.0)|0,8);return}function yj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;h=e;i=c[(c[11106]|0)+6436>>2]|0;f=+pg(d/5.0,1.0);j=d-f*.5;d=f*.25;Ze(h,d,d);Ph(a,h);d=j/3.0;k=d+ +g[a>>2];j=j+ +g[a+4>>2]-d*.5;a=i+616|0;i=c[a>>2]|0;Ze(h,k-d,j-d);zj(i,h);i=c[a>>2]|0;Ze(h,k,j);zj(i,h);i=c[a>>2]|0;d=d*2.0;Ze(h,d+k,j-d);zj(i,h);Aj(c[a>>2]|0,b,0,f);l=e;return}function zj(a,b){a=a|0;b=b|0;Gt(a+84|0,b);return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;rw(a,c[a+92>>2]|0,c[a+84>>2]|0,b,d,e);Jt(a);return}function Bj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.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,v=0;r=l;l=l+64|0;q=r+56|0;p=r+48|0;m=r+16|0;i=r+8|0;j=r;n=r+40|0;o=r+32|0;f=c[11106]|0;if(((c[f+6668>>2]|0)==(d|0)?!((e&4|0)==0&(a[f+6750>>0]|0)!=0):0)?(k=Zi()|0,(a[k+320>>0]|0)==0):0){if(!(e&8))h=+g[f+5412>>2];else h=0.0;c[m>>2]=c[b>>2];c[m+4>>2]=c[b+4>>2];c[m+8>>2]=c[b+8>>2];c[m+12>>2]=c[b+12>>2];d=k+484|0;Cj(m,d);if(e&1|0){Ze(q,4.0,4.0);Dj(m,q);b=Ej(d,m)|0;f=k+616|0;if(b)d=m+8|0;else{s=c[f>>2]|0;u=m;v=c[u+4>>2]|0;d=i;c[d>>2]=c[u>>2];c[d+4>>2]=v;d=m+8|0;v=d;u=c[v+4>>2]|0;t=j;c[t>>2]=c[v>>2];c[t+4>>2]=u;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];Yv(s,p,q,0)}v=c[f>>2]|0;Ze(p,1.0,1.0);nf(q,m,p);Ze(o,1.0,1.0);lf(n,d,o);Gw(v,q,n,Lf(43,1.0)|0,h,15,2.0);if(!b)aw(c[f>>2]|0)}if(e&2|0){v=c[k+616>>2]|0;Gw(v,m,m+8|0,Lf(43,1.0)|0,h,-1,1.0)}}l=r;return}function Cj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;ql(e,a,b);h=e;g=c[h+4>>2]|0;f=a;c[f>>2]=c[h>>2];c[f+4>>2]=g;f=a+8|0;tl(e,f,b+8|0);a=c[e+4>>2]|0;b=f;c[b>>2]=c[e>>2];c[b+4>>2]=a;l=d;return}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0;g[a>>2]=+g[a>>2]-+g[b>>2];c=b+4|0;d=a+4|0;g[d>>2]=+g[d>>2]-+g[c>>2];d=a+8|0;g[d>>2]=+g[b>>2]+ +g[d>>2];b=a+12|0;g[b>>2]=+g[c>>2]+ +g[b>>2];return}function Ej(a,b){a=a|0;b=b|0;if((+g[b>>2]>=+g[a>>2]?+g[b+4>>2]>=+g[a+4>>2]:0)?+g[b+8>>2]<=+g[a+8>>2]:0)a=+g[b+12>>2]<=+g[a+12>>2];else a=0;return a|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)<(b|0)?b:(a|0)>(c|0)?c:a)|0}function Gj(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+g[b>>2];if((c>=+g[a>>2]?(d=+g[b+4>>2],d>=+g[a+4>>2]):0)?c<+g[a+8>>2]:0)a=d<+g[a+12>>2];else a=0;return a|0}function Hj(a){a=a|0;if(a>>>0<21)return c[(c[11106]|0)+44+(a<<2)>>2]|0;else Bb(6684,5025,4486,35493);return 0}function Ij(b){b=b|0;var d=0;do if((b|0)>=0)if((b|0)<512){d=(a[(c[11106]|0)+237+b>>0]|0)!=0;break}else Bb(6729,5025,4494,35505);else d=0;while(0);return d|0}function Jj(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0,h=0.0;f=c[11106]|0;do if((a|0)>=0)if((a|0)<512){h=+g[f+1088+(a<<2)>>2];e=Nh(h,h-+g[f+12>>2],b,d)|0;break}else Bb(6835,5025,4512,35542);else e=0;while(0);return e|0}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,h=0.0;f=c[11106]|0;if((a|0)>=0){if((a|0)>=512)Bb(6919,5025,4521,35515);h=+g[f+1088+(a<<2)>>2];d=h==0.0;if(!(d|b^1)){e=+g[f+128>>2];if(h>e)d=(Jj(a,e,+g[f+132>>2])|0)>0;else d=0}}else d=0;return d|0}function Lj(b){b=b|0;var d=0;d=c[11106]|0;if((b|0)>=0){if((b|0)>=512)Bb(6919,5025,4534,35528);if(+g[d+3136+(b<<2)>>2]>=0.0)b=(a[d+237+b>>0]|0)==0;else b=0}else b=0;return b|0}function Mj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+216+b>>0]|0)!=0|0;else Bb(7013,5025,4541,35562);return 0}function Nj(){var b=0,d=0;d=c[11106]|0;b=0;while(1){if(a[d+216+b>>0]|0){b=1;break}if((b|0)<4)b=b+1|0;else{b=0;break}}return b|0}function Oj(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,h=0.0;if(a>>>0>=5)Bb(7013,5025,4557,35589);e=c[11106]|0;d=+g[e+988+(a<<2)>>2];do if(d==0.0)a=1;else{if((b?(f=+g[e+128>>2],d>f):0)?(h=+g[e+132>>2],d=d-f,f=h*.5,b=+Baa(d,h)>f,b^+Baa(d-+g[e+12>>2],h)>f):0){a=1;break}a=0}while(0);return a|0}function Pj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+978+b>>0]|0)!=0|0;else Bb(7013,5025,4575,35625);return 0}function Qj(b){b=b|0;if(b>>>0<5)return (a[(c[11106]|0)+973+b>>0]|0)!=0|0;else Bb(7013,5025,4582,35604);return 0}function Rj(b,d){b=b|0;d=+d;var e=0;if(b>>>0>=5)Bb(7013,5025,4589,35641);e=c[11106]|0;if(!(a[e+216+b>>0]|0))b=0;else{if(d<0.0)d=+g[e+40>>2];b=+g[e+1068+(b<<2)>>2]>=d*d}return b|0}function Sj(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+208|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Tj(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6552>>2]|0;if((d|0)>0)b=(Uj(b+6540|0,d+-1|0)|0)+28|0;else b=b+208|0;d=c[b+4>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=d;return}function Uj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b*36|0)|0;else Bb(14314,39072,1118,14323);return 0}function Vj(b,d,e){b=b|0;d=d|0;e=+e;var f=0;f=c[11106]|0;if(d>>>0>=5)Bb(7013,5025,4624,35738);if(e<0.0)e=+g[f+40>>2];if((a[f+216+d>>0]|0)!=0?+g[f+1068+(d<<2)>>2]>=e*e:0)lf(b,f+208|0,f+908+(d<<3)|0);else Ze(b,0.0,0.0);return}function Wj(a){a=a|0;var b=0,d=0,e=0;if(a>>>0<5){e=c[11106]|0;d=e+208|0;b=c[d+4>>2]|0;a=e+908+(a<<3)|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}else Bb(7013,5025,4636,35756)}function Xj(){return c[(c[11106]|0)+7036>>2]|0}function Yj(a){a=a|0;c[(c[11106]|0)+7036>>2]=a;return}function Zj(a){a=a|0;c[(c[11106]|0)+11140>>2]=a&1;return}function _j(a){a=a|0;c[(c[11106]|0)+11136>>2]=a&1;return}function $j(){var a=0,b=0;a=c[11106]|0;b=c[a+6464>>2]|0;if(!b)a=0;else a=(b|0)==(c[(c[a+6436>>2]|0)+280>>2]|0);return a|0}function ak(a){a=a|0;if(Oj(a,0)|0)a=hh(0)|0;else a=0;return a|0}function bk(){var a=0;a=c[11106]|0;if(!(c[a+6448>>2]|0))a=(c[a+6456>>2]|0)!=0;else a=1;return a|0}function ck(){return (c[(c[11106]|0)+6464>>2]|0)!=0|0}function dk(){var b=0;b=c[11106]|0;if(!(c[b+6668>>2]|0))b=0;else b=(a[b+6750>>0]|0)==0;return b|0}function ek(){var a=0;a=wg()|0;return lh(a+484|0,a+288|0)|0}function fk(){var b=0,d=0;b=c[11106]|0;d=c[(c[b+6436>>2]|0)+280>>2]|0;if((c[b+6448>>2]|0)==(d|0))a[b+6452>>0]=1;if((c[b+6464>>2]|0)==(d|0))a[b+6478>>0]=1;return}function gk(a){a=a|0;var b=0,d=0;d=(wg()|0)+288|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function hk(a){a=a|0;var b=0,d=0;d=(wg()|0)+296|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function ik(a){a=a|0;ch(a,(wg()|0)+288|0);return}function jk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;h=i+8|0;j=i;e=i+16|0;f=(c[11106]|0)+10568|0;c[j>>2]=c[f>>2];yf(e,16,7093,j)|0;if((d?(g=kk(e)|0,g|0):0)?a[g+144>>0]|0:0){c[g+188>>2]=1;j=(c[f>>2]|0)+1|0;c[f>>2]=j;c[h>>2]=j;yf(e,16,7093,h)|0}ti(e,0,b|34341703)|0;l=i;return}function kk(a){a=a|0;var b=0;b=c[11106]|0;return Yf(b+6420|0,Af(a,0,0)|0)|0}function lk(a,b){a=a|0;b=b|0;jk(0,1);mk(a,b);nk();return}function mk(b,d){b=b|0;d=d|0;var e=0,f=0;if(!(a[(Zi()|0)+149>>0]|0)){e=c[11106]|0;f=e+11148|0;En(f,(zf(f,3073,b,d)|0)+(e+11148)|0)}return}function nk(){if(!(c[(wg()|0)+8>>2]&33554432))Bb(7108,5025,4783,34526);else{cj();return}}function ok(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;lk(a,e);l=d;return}function pk(){jk(0,0);return}function qk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;d=m+8|0;f=m;h=c[11106]|0;e=c[h+6436>>2]|0;k=c[h+6552>>2]|0;rk(d);c[d>>2]=b;c[d+4>>2]=0;c[d+8>>2]=e;i=h+6372|0;j=d+12|0;c[j>>2]=c[i>>2];c[d+16>>2]=c[(Rg(e+472|0)|0)>>2];e=h+208|0;g=c[e>>2]|0;e=c[e+4>>2]|0;n=d+28|0;c[n>>2]=g;c[n+4>>2]=e;if((a[h+6750>>0]|0)==0?(a[h+6751>>0]|0)!=0:0){sk(f);e=f;g=c[e>>2]|0;e=c[e+4>>2]|0}else{n=f;c[n>>2]=g;c[n+4>>2]=e}n=d+20|0;c[n>>2]=g;c[n+4>>2]=e;e=h+6540|0;do if((c[e>>2]|0)>(k|0)){qi(e,k+1|0);if((c[(Uj(e,k)|0)>>2]|0)==(b|0)?(n=c[(Uj(e,k)|0)+12>>2]|0,(n|0)==((c[i>>2]|0)+-1|0)):0){n=c[j>>2]|0;c[(Uj(e,k)|0)+12>>2]=n;break}f=Uj(e,k)|0;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0))}else tk(e,d);while(0);l=m;return}function rk(a){a=a|0;Xe(a+20|0);Xe(a+28|0);return}function sk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0;k=l;l=l+48|0;j=k+40|0;b=k+32|0;d=k+16|0;e=k+8|0;f=k;h=c[11106]|0;i=c[h+6664>>2]|0;if(!i){h=h+208|0;i=c[h+4>>2]|0;j=a;c[j>>2]=c[h>>2];c[j+4>>2]=i}else{q=c[h+6740>>2]|0;m=i+652+(q<<4)|0;o=+g[m>>2];p=+g[h+5404>>2]*4.0;p=o+ +sf(p,+Ul(m));o=+g[i+652+(q<<4)+12>>2];n=+g[h+5408>>2];Ze(j,p,o-+sf(n,+ki(m)));nf(b,i+20|0,j);wl(d);m=d+8|0;h=c[m+4>>2]|0;i=f;c[i>>2]=c[m>>2];c[i+4>>2]=h;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];Lt(e,b,d,j);$e(a,e)}l=k;return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){$u(a,av(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*36|0)|0;d=b;a=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function uk(a){a=a|0;qk(Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0);return}function vk(b){b=b|0;var d=0,e=0,f=0;e=c[11106]|0;f=e+6540|0;if((b|0)>0)d=(Uj(f,b+-1|0)|0)+4|0;else d=(Uj(f,0)|0)+8|0;d=c[d>>2]|0;if(!(c[e+6740>>2]|0))d=ft(d)|0;dj(d);a[d+320>>0]=1;qi(f,b);return}function wk(a){a=a|0;if(xk(a)|0)vk((c[(c[11106]|0)+6540>>2]|0)+-1|0);return}function xk(a){a=a|0;var b=0,d=0;d=c[11106]|0;b=d+6540|0;d=c[d+6552>>2]|0;if((c[b>>2]|0)>(d|0))a=(c[(Uj(b,d)|0)>>2]|0)==(a|0);else a=0;return a|0}function yk(){var a=0,b=0,d=0,e=0,f=0;b=c[11106]|0;d=b+6552|0;e=c[d>>2]|0;a=e+-1|0;if(((e|0)>=1?(f=b+6540|0,(e|0)<=(c[f>>2]|0)):0)?(d=c[(Uj(d,a)|0)>>2]|0,(d|0)==(c[(Uj(f,a)|0)>>2]|0)):0){a:do if((e|0)>1)while(1){if(!(c[(Uj(f,a)|0)+4>>2]|0))break a;if(!(c[(c[(Uj(f,a)|0)+4>>2]|0)+8>>2]&268435456))break a;b=a+-1|0;if((a|0)>1)a=b;else{a=b;break}}while(0);vk(a)}return}function zk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+8|0;f=h;d=h+12|0;e=c[11106]|0;if(xk(a)|0){if(!(b&268435456)){c[g>>2]=a;yf(d,20,7251,g)|0}else{c[f>>2]=c[e+6552>>2];yf(d,20,7239,f)|0}a=ti(d,0,b|67108864)|0;if(!a)Bk()}else{Ak(e+6564|0);a=0}l=h;return a|0}function Ak(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return}function Bk(){var a=0,b=0;a=c[11106]|0;b=c[a+6436>>2]|0;if(!(c[b+8>>2]&67108864))Bb(7264,5025,4996,34746);if((c[a+6552>>2]|0)>0){Gk(b);cj();return}else Bb(7312,5025,4997,34746)}function Ck(a,b){a=a|0;b=b|0;var d=0;d=c[11106]|0;if((c[d+6540>>2]|0)>(c[d+6552>>2]|0))a=zk(Eg(c[d+6436>>2]|0,a,0)|0,b|321)|0;else{Ak(d+6564|0);a=0}return a|0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+6540|0;e=c[b+6552>>2]|0;if((c[d>>2]|0)>(e|0)){e=c[(Uj(d,e)|0)>>2]|0;a=(e|0)==(Eg(c[b+6436>>2]|0,a,0)|0)}else a=0;return a|0}function Ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;h=k;i=c[11106]|0;j=Eg(c[i+6436>>2]|0,b,0)|0;f=i+6564|0;do if(xk(j)|0){if(!(c[f>>2]|0)){af(g,i+4|0,.5);Ze(h,.5,.5);Fk(g,8,h)}if(!(ti(b,d,e|201326880)|0)){Bk();b=0;break}if((d|0)!=0?(a[d>>0]|0)==0:0){Bk();wk(j);b=0}else b=1}else{Ak(f);b=0}while(0);l=k;return b|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[11106]|0;g=a;a=c[g+4>>2]|0;f=e+6592|0;c[f>>2]=c[g>>2];c[f+4>>2]=a;f=d;a=c[f+4>>2]|0;d=e+6600|0;c[d>>2]=c[f>>2];c[d+4>>2]=a;c[e+6564>>2]=b|0?b:1;return}function Gk(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0;d=c[11106]|0;h=d+6664|0;if(((((c[h>>2]|0)==(a|0)?Gq()|0:0)?(e=d+6784|0,(c[e>>2]&-2|0)==2):0)?(f=d+6780|0,(c[f>>2]|0)==0):0)?(c[d+6740>>2]|0)==0:0){c[f>>2]=1;lo();if((c[e>>2]|0)==2)b=+pg(+g[a+40>>2],+g[a+56>>2]);else b=0.0;b=b-+g[a+112>>2];h=c[h>>2]|0;g[h+664>>2]=b;g[h+656>>2]=b}return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;do if(Pj(b)|0?hh(8)|0:0){if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5011,34630);else{qk(a);e=1;break}}else e=0;while(0);return e|0}function Ik(a,b){a=a|0;b=b|0;var d=0;d=c[(c[11106]|0)+6436>>2]|0;if(!a)a=c[d+280>>2]|0;else a=Eg(d,a,0)|0;if(!a)Bb(5173,5025,5025,34678);if(Pj(b)|0?hh(8)|0:0)qk(a);return zk(a,321)|0}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7341:a,0)|0;do if(Pj(b)|0?Kk(8)|0:0){if(!d?bk()|0:0)break;qk(a)}while(0);return zk(a,321)|0}function Kk(b){b=b|0;var d=0,e=0,f=0,g=0;if(b&64|0)Bb(8329,5025,6717,35232);e=c[11106]|0;a:do if(b&4)if(!(c[e+6440>>2]|0))b=0;else g=11;else switch(b&3){case 3:if((c[e+6444>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 2:if((c[e+6440>>2]|0)==(c[(c[e+6436>>2]|0)+624>>2]|0)){g=11;break a}else{b=0;break a}case 1:{d=c[e+6440>>2]|0;if(!d){b=0;break a}if(ei(d,c[e+6436>>2]|0)|0){g=11;break a}else{b=0;break a}}default:if((c[e+6440>>2]|0)==(c[e+6436>>2]|0)){g=11;break a}else{b=0;break a}}while(0);do if((g|0)==11)if(jh(c[e+6444>>2]|0,b)|0){if((((b&32|0)==0?(f=c[e+6464>>2]|0,f|0):0)?(a[e+6478>>0]|0)==0:0)?(f|0)!=(c[(c[e+6440>>2]|0)+100>>2]|0):0){b=0;break}b=1}else b=0;while(0);return b|0}function Lk(a,b){a=a|0;b=b|0;a=Eg(c[(c[11106]|0)+6436>>2]|0,(a|0)==0?7356:a,0)|0;if(Pj(b)|0?!(Kk(4)|0):0)qk(a);return zk(a,321)|0}function Mk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nk(a,Eg(Zi()|0,a,0)|0,b,c,d)|0}function Nk(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0;v=l;l=l+304|0;r=v+16|0;q=v;i=v+32|0;o=v+24|0;p=v+40|0;u=c[11106]|0;m=Zi()|0;n=c[m+8>>2]&4;bm(i);$e(o,e);s=+g[o>>2];e=o+4|0;t=+g[e>>2];if(s<=0.0)g[o>>2]=+pg(s+ +g[i>>2],4.0);if(t<=0.0)g[e>>2]=+pg(t+ +g[i+4>>2],4.0);j=u+5392|0;k=c[j>>2]|0;if(!f)g[j>>2]=0.0;e=c[m>>2]|0;if(!b){c[r>>2]=e;c[r+4>>2]=d;yf(p,256,12902,r)|0}else{c[q>>2]=e;c[q+4>>2]=b;c[q+8>>2]=d;yf(p,256,12891,q)|0}si(o,0);e=ti(p,0,n|h|16777475)|0;i=Zi()|0;c[i+104>>2]=d;c[i+180>>2]=(t==0.0?2:0)|s==0.0;c[j>>2]=k;do if(!(h&8388608)){if((c[i+332>>2]|0)==0?(a[i+321>>0]|0)==0:0)break;if((c[u+6672>>2]|0)==(d|0)){dj(i);Jh(i,0);Wg(d+1|0,i);c[u+6496>>2]=2}}while(0);l=v;return e|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!a)Bb(5173,5025,5105,32111);else return Nk(0,a,b,c,d)|0;return 0}function Pk(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;b=r+64|0;f=r+48|0;i=r+32|0;j=r+24|0;k=r+16|0;m=r+8|0;n=r;o=c[11106]|0;e=o+6436|0;p=c[e>>2]|0;h=p+8|0;if(!(c[h>>2]&16777216))Bb(7369,5025,5114,32122);if((c[p+160>>2]|0)<=1){Qk(b);d=c[p+180>>2]|0;if(d&1|0)g[b>>2]=+pg(4.0,+g[b>>2]);if(d&2|0){d=b+4|0;g[d>>2]=+pg(4.0,+g[d>>2])}cj();e=(c[e>>2]|0)+220|0;nf(i,e,b);Yg(f,e,i);$g(b,0.0);b=p+332|0;if((c[b>>2]|0)==0?(a[p+321>>0]|0)==0:0)q=15;else if(!(c[h>>2]&8388608)){h=p+104|0;dh(f,c[h>>2]|0,0)|0;Bj(f,c[h>>2]|0,1);if((c[b>>2]|0)==0?(p|0)==(c[o+6664>>2]|0):0){Ze(k,2.0,2.0);lf(j,f,k);Ze(n,2.0,2.0);nf(m,f+8|0,n);Yg(i,j,m);Bj(i,c[o+6668>>2]|0,2)}}else q=15;if((q|0)==15)dh(f,0,0)|0}else cj();l=r;return}function Qk(a){a=a|0;var b=0,d=0;d=(wg()|0)+28|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[11106]|0;Sk(3,e+5616|0);Tk(6,+g[e+5412>>2]);Tk(7,+g[e+5416>>2]);Uk(1,e+5404|0);return Ok(a,b,1,d|65540)|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+32|0;e=d;f=c[11106]|0;tm(e);c[e>>2]=a;a=f+5504+(a<<4)|0;g=e+4|0;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];um(f+6504|0,e);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=d;return}function Tk(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0;f=l;l=l+16|0;d=f;e=xm(a)|0;if((c[e>>2]|0)==1){h=c[11106]|0;e=ym(e,h+5352|0)|0;Am(d,a,+g[e>>2]);zm(h+6516|0,d);g[e>>2]=b;l=f;return}else Bb(18388,5025,6615,32883)}function Uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;g=h+24|0;d=h+8|0;e=h;f=xm(a)|0;if((c[f>>2]|0)==2){j=c[11106]|0;i=ym(f,j+5352|0)|0;m=i;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bm(d,a,g);zm(j+6516|0,d);e=b;f=c[e+4>>2]|0;g=i;c[g>>2]=c[e>>2];c[g+4>>2]=f;l=h;return}else Bb(18388,5025,6629,32883)}function Vk(){Pk();Wk(3);Xk(1);return}function Wk(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i;b=c[11106]|0;a:do if((a|0)>0){h=b+6516|0;e=b+5352|0;while(1){b=Cm(h)|0;d=xm(c[b>>2]|0)|0;switch(c[d>>2]|0){case 1:{b=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=b;break}case 2:{Ze(f,+g[b+4>>2],+g[b+8>>2]);d=ym(d,e)|0;j=f;b=c[j+4>>2]|0;c[d>>2]=c[j>>2];c[d+4>>2]=b;break}case 0:{j=c[b+4>>2]|0;c[(ym(d,e)|0)>>2]=j;break}default:{}}Dm(h);if((a|0)>1)a=a+-1|0;else break a}}while(0);l=i;return}function Xk(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[11106]|0;if((a|0)>0){d=b+6504|0;while(1){e=vm(d)|0;f=e+4|0;e=b+5504+(c[e>>2]<<4)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];wm(d);if((a|0)>1)a=a+-1|0;else break}}return}function Yk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+16|0;h=k;j=k+8|0;i=c[11106]|0;f=vf(708)|0;a[h>>0]=a[k+12>>0]|0;f=Fg(708,h,f)|0;xg(f,i,b);c[j>>2]=f;c[f+8>>2]=e;cg(i+6420|0,c[f+4>>2]|0,f);if(!(e&256)){Ze(h,60.0,60.0);b=c[j>>2]|0;m=h;n=c[m>>2]|0;m=c[m+4>>2]|0;f=b+12|0;c[f>>2]=n;c[f+4>>2]=m;f=b+20|0;c[f>>2]=n;c[f+4>>2]=m;b=Ri(c[b+4>>2]|0)|0;f=c[j>>2]|0;if(b){Zk(f,4,0);f=(c[j>>2]|0)+12|0;o=b+8|0;n=c[o+4>>2]|0;m=f;c[m>>2]=c[o>>2];c[m+4>>2]=n;$e(h,f);f=c[j>>2]|0;m=c[h+4>>2]|0;n=f+20|0;c[n>>2]=c[h>>2];c[n+4>>2]=m;a[f+147>>0]=a[b+24>>0]|0;b=b+16|0;if(+rf(b)>9.999999747378752e-06){m=b;n=c[m+4>>2]|0;o=d;c[o>>2]=c[m>>2];c[o+4>>2]=n}}}n=d;m=c[n>>2]|0;n=c[n+4>>2]|0;o=f+44|0;c[o>>2]=m;c[o+4>>2]=n;o=f+36|0;c[o>>2]=m;c[o+4>>2]=n;o=f+28|0;c[o>>2]=m;c[o+4>>2]=n;if(!(e&64)){if(+g[f+28>>2]<=0.0)c[f+168>>2]=2;if(+g[f+32>>2]<=0.0)c[f+172>>2]=2;if((c[f+168>>2]|0)>0)b=1;else b=(c[f+172>>2]|0)>0&1}else{c[f+172>>2]=2;c[f+168>>2]=2;b=0}a[f+176>>0]=b;b=i+6384|0;if(!(e&8192))al(b,j);else Mt(b,xt(b)|0,j)|0;l=k;return c[j>>2]|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=a+192|0;g=c[f>>2]|0;e=~b;c[f>>2]=d?g|b:g&e;f=a+196|0;g=c[f>>2]|0;c[f>>2]=d?g|b:g&e;a=a+200|0;f=c[a>>2]|0;c[a>>2]=d?f|b:f&e;return}function _k(a){a=a|0;return (c[a>>2]|0)==0|0}function $k(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function al(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){ej(a,Nt(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function bl(a){a=a|0;var b=0,d=0.0;b=c[11106]|0;c[b+6436>>2]=a;if(a|0){d=+ji(a);g[b+6248>>2]=d;g[b+6228>>2]=d}return}function cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[11106]|0;e=a+432|0;f=c[a+472>>2]|0;if(!b){if((c[e>>2]|0)!=(f|0))Bb(12947,5025,5174,13016);if((c[a+436>>2]|0)!=(c[a+420>>2]|0))Bb(13032,5025,5175,13016);if((c[a+440>>2]|0)!=(c[d+6552>>2]|0))Bb(13088,5025,5176,13016);if((c[a+444>>2]|0)!=(c[d+6504>>2]|0))Bb(13164,5025,5177,13016);if((c[a+448>>2]|0)!=(c[d+6516>>2]|0))Bb(13229,5025,5178,13016);if((c[a+452>>2]|0)!=(c[d+6528>>2]|0))Bb(13290,5025,5179,13016)}else{c[e>>2]=f;c[a+436>>2]=c[a+420>>2];c[a+440>>2]=c[d+6552>>2];c[a+444>>2]=c[d+6504>>2];c[a+448>>2]=c[d+6516>>2];c[a+452>>2]=c[d+6528>>2]}return}function dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i+8|0;h=i;e=a+192|0;f=c[e>>2]|0;if(!((d|0)!=0&(f&d|0)==0)){c[e>>2]=f&-15;Ze(g,3402823466385288598117041.0e14,3402823466385288598117041.0e14);f=g;e=c[f+4>>2]|0;d=a+204|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;d=a+20|0;e=d;f=c[e+4>>2]|0;j=g;c[j>>2]=c[e>>2];c[j+4>>2]=f;j=b;f=c[j+4>>2]|0;e=a+12|0;c[e>>2]=c[j>>2];c[e+4>>2]=f;$e(h,b);e=h;f=c[e+4>>2]|0;b=d;c[b>>2]=c[e>>2];c[b+4>>2]=f;lf(h,d,g);Ph(a+220|0,h);lf(h,d,g);Ph(a+244|0,h)}l=i;return}function el(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0,i=0;h=b+196|0;i=c[h>>2]|0;do if(!((e|0)!=0&(i&e|0)==0)){c[h>>2]=i&-15;f=+g[d>>2];h=b+168|0;if(f>0.0){c[h>>2]=0;g[b+36>>2]=f}else{c[h>>2]=2;a[b+176>>0]=0}f=+g[d+4>>2];h=b+172|0;if(f>0.0){c[h>>2]=0;g[b+40>>2]=f;break}else{c[h>>2]=2;a[b+176>>0]=0;break}}while(0);return}function fl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1)){b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}else b=0.0;return +b}function gl(a){a=a|0;var b=0.0;if(!(c[a+8>>2]&1024))b=0.0;else{b=+ji(a);b=b+ +g[(c[11106]|0)+5408>>2]*2.0}return +b}function hl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+200|0;g=c[f>>2]|0;if(!((e|0)!=0&(g&e|0)==0)){c[f>>2]=g&-15;a[b+147>>0]=d&1}return}function il(){dj(c[(c[11106]|0)+6436>>2]|0);return}function jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Yu(a,Zu(a,b)|0);c[a>>2]=b;return}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,h=0.0;c=l;l=l+16|0;d=c;e=b+20|0;h=+g[e>>2]+ +g[b+36>>2];f=+g[b+24>>2];Ze(d,h,f+ +fl(b));Yg(a,e,d);l=c;return}function ll(a){a=a|0;var b=0,d=0;b=c[11106]|0;if((c[a+8>>2]&256|0)==0?(d=b+10600|0,+g[d>>2]<=0.0):0)c[d>>2]=c[b+16>>2];return}function ml(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;e=l;l=l+16|0;d=e;Xe(d);c=+g[b+60>>2];if(!(c!=0.0))c=+g[b+244>>2]-+g[b+20>>2]+ +g[b+108>>2];g[d>>2]=+(~~c|0);c=+g[b+64>>2];if(!(c!=0.0))c=+g[b+248>>2]-+g[b+24>>2]+ +g[b+112>>2];g[d+4>>2]=+(~~c|0);nf(a,d,b+84|0);l=e;return}function nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;i=n+32|0;j=n+8|0;e=n+24|0;f=n+16|0;h=n;k=c[11106]|0;m=c[b+8>>2]|0;Xe(a);if(!(m&33554432)){o=k+5372|0;lf(f,k+4|0,k+5484|0);ql(e,o,f);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Lt(j,d,o,i);e=j;o=c[e>>2]|0;e=c[e+4>>2]|0;f=a;c[f>>2]=o;c[f+4>>2]=e;f=h;c[f>>2]=o;c[f+4>>2]=e;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];ol(j,b,i);b=(m&8|0)==0;if(!((m&2048|0)==0|b&+g[j>>2]<+g[d>>2]^1)){o=a+4|0;g[o>>2]=+g[k+5452>>2]+ +g[o>>2]}if(b&+g[j+4>>2]<+g[d+4>>2])g[a>>2]=+g[k+5452>>2]+ +g[a>>2]}else{k=d;m=c[k+4>>2]|0;o=a;c[o>>2]=c[k>>2];c[o+4>>2]=m}l=n;return}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,h=0.0,i=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+32|0;m=o;n=c[11106]|0;if(c[n+6580>>2]|0){f=+g[n+6628>>2];i=+g[n+6632>>2];h=+g[n+6636>>2];k=+g[n+6640>>2];if(!(f>=0.0)|!(h>=0.0)){e=d;f=+g[b+36>>2]}else{e=d;f=+gi(+g[d>>2],f,h)}g[e>>2]=f;if(!(i>=0.0)|!(k>=0.0)){e=d+4|0;f=+g[b+40>>2]}else{p=d+4|0;e=p;f=+gi(+g[p>>2],i,k)}g[e>>2]=f;e=n+6644|0;if(c[e>>2]|0){Ot(m);c[m>>2]=c[n+6648>>2];q=b+20|0;s=c[q+4>>2]|0;r=m+4|0;c[r>>2]=c[q>>2];c[r+4>>2]=s;r=b+36|0;s=c[r+4>>2]|0;q=m+12|0;c[q>>2]=c[r>>2];c[q+4>>2]=s;q=m+20|0;s=d;r=c[s+4>>2]|0;p=q;c[p>>2]=c[s>>2];c[p+4>>2]=r;ie[c[e>>2]&127](m);e=c[q+4>>2]|0;p=d;c[p>>2]=c[q>>2];c[p+4>>2]=e}}if(!(c[b+8>>2]&16777280)){ql(m,d,n+5372|0);q=m;s=c[q+4>>2]|0;r=d;c[r>>2]=c[q>>2];c[r+4>>2]=s;i=(c[j>>2]=s,+g[j>>2]);k=+fl(b);k=k+ +gl(b);g[d+4>>2]=+pg(i,k+ +pg(0.0,+g[n+5364>>2]+-1.0))}q=d;r=c[q+4>>2]|0;s=a;c[s>>2]=c[q>>2];c[s+4>>2]=r;l=o;return}function pl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*36|0)|0;else Bb(39063,39072,1128,14585);return 0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]>=+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]>=+g[c+4>>2]?b:c)+4>>2]);return}function rl(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;Ze(a,b,c);Ze(a+8|0,d,e);return}function sl(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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.0,C=0,D=0,E=0;A=l;l=l+64|0;p=A;u=A+40|0;z=A+24|0;o=A+32|0;q=A+16|0;n=c[11106]|0;i=+g[n+5484>>2];j=+g[n+5488>>2];wl(u);B=+g[d>>2];n=B-+Ul(u)>i*2.0;y=d+4|0;B=+g[y>>2];t=B-+ki(u)>j*2.0;Ze(p,n?-i:0.0,t?-j:0.0);Dj(u,p);t=u+8|0;lf(o,t,d);c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Lt(z,b,u,p);a:do if((h|0)==1){k=f+12|0;m=f+4|0;n=f+8|0;h=((c[e>>2]|0)!=-1)<<31>>31;while(1){C=(h|0)==-1;o=c[(C?e:1272+(h<<2)|0)>>2]|0;if(!(!C?(o|0)==(c[e>>2]|0):0)){Xe(a);switch(o|0){case 3:{Ze(p,+g[f>>2],+g[k>>2]);E=p;D=c[E+4>>2]|0;C=a;c[C>>2]=c[E>>2];c[C+4>>2]=D;break}case 1:{Ze(p,+g[f>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 0:{Ze(p,+g[n>>2]-+g[d>>2],+g[k>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}case 2:{Ze(p,+g[n>>2]-+g[d>>2],+g[m>>2]-+g[y>>2]);C=p;D=c[C+4>>2]|0;E=a;c[E>>2]=c[C>>2];c[E+4>>2]=D;break}default:{}}nf(q,a,d);Yg(p,a,q);if(Ej(u,p)|0)break}if((h|0)<3)h=h+1|0;else{v=13;break a}}c[e>>2]=o}else v=13;while(0);do if((v|0)==13){k=c[e>>2]|0;m=f+8|0;i=+g[d>>2];j=+g[y>>2];h=((k|0)!=-1)<<31>>31;while(1){E=(h|0)==-1;n=c[(E?e:1288+(h<<2)|0)>>2]|0;if((!((n|0)==(k|0)&(E^1))?(r=(n|0)==0,s=(n|0)==1,w=(n|0)==2,x=(n|0)==3,!(+g[(r?f:t)>>2]-+g[(s?m:u)>>2]>2]-+g[(x?m:u)+4>>2]>2]=-1;B=+g[b+4>>2];i=+sf(+g[b>>2]+i,+g[t>>2])-i;i=+pg(i,+g[u>>2]);B=+sf(B+j,+g[u+12>>2])-j;B=+pg(B,+g[u+4>>2]);g[a>>2]=i;g[a+4>>2]=B;break}Xe(a);if(r)i=+g[f>>2]-+g[d>>2];else i=+g[(s?m:z)>>2];g[a>>2]=i;if(w)i=+g[f+4>>2]-+g[y>>2];else i=+g[(x?m:z)+4>>2];g[a+4>>2]=i;c[e>>2]=n}while(0);l=A;return}function tl(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[(+g[b>>2]<+g[c>>2]?b:c)>>2],+g[(+g[b+4>>2]<+g[c+4>>2]?b:c)+4>>2]);return}function ul(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+16|0;h=k;i=k+8|0;o=d+108|0;n=c[o+4>>2]|0;m=b;c[m>>2]=c[o>>2];c[m+4>>2]=n;f=+g[d+128>>2];e=+g[d+116>>2];if(e<3402823466385288598117041.0e14)g[b>>2]=e-+g[d+124>>2]*(+g[d+36>>2]-+g[d+136>>2]);e=+g[d+120>>2];if(e<3402823466385288598117041.0e14){p=+fl(d);e=e-(1.0-f)*(p+ +gl(d));g[b+4>>2]=e-f*(+g[d+40>>2]-+g[d+140>>2])}Ze(i,0.0,0.0);ql(h,b,i);o=h;n=c[o>>2]|0;o=c[o+4>>2]|0;m=b;c[m>>2]=n;c[m+4>>2]=o;e=(c[j>>2]=n,+g[j>>2]);f=(c[j>>2]=o,+g[j>>2]);if((a[d+147>>0]|0)==0?(a[d+149>>0]|0)==0:0){g[b>>2]=+sf(e,+wn(d));g[b+4>>2]=+sf(f,+xn(d))}l=k;return}function vl(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,k=0,m=0.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,H=0,I=0,J=0,K=0;K=l;l=l+112|0;D=K+64|0;G=K+96|0;H=K+56|0;I=K+48|0;J=K+32|0;B=K+16|0;z=K+8|0;A=K;v=K+24|0;w=K+80|0;x=K+72|0;E=K+88|0;F=c[11106]|0;i=c[b+8>>2]|0;if(((i&66|0)==0?(c[b+168>>2]|0)<=0:0)?(c[b+172>>2]|0)<=0:0){y=i>>>15&4;m=+g[F+6228>>2];m=+(~~(+(~~+pg(m*1.350000023841858,m*.20000000298023224+(+g[b+92>>2]+1.0))|0)*.75)|0);Ze(G,3402823466385288598117041.0e14,3402823466385288598117041.0e14);Ze(H,3402823466385288598117041.0e14,3402823466385288598117041.0e14);go(13343);if((f|0)>0){o=b+20|0;p=b+28|0;q=F+6440|0;r=F+208|0;s=F+6484|0;t=F+973|0;u=F+7036|0;n=0;do{nf(D,o,p);k=1016+(n*24|0)|0;El(I,o,D,k);af(B,1016+(n*24|0)+8|0,m);nf(D,I,B);Yg(J,I,D);Pt(J);Ml(J,Tg(b,n)|0,B,z,8224)|0;i=a[z>>0]|0;if((i|a[B>>0])<<24>>24)c[u>>2]=6-(n&1);i=i<<24>>24==0;if(!((c[q>>2]|0)!=(b|0)|i)?(n|0)==0&(a[t>>0]|0)!=0:0){k=d;i=c[k+4>>2]|0;C=v;c[C>>2]=c[k>>2];c[C+4>>2]=i;c[D>>2]=c[v>>2];c[D+4>>2]=c[v+4>>2];ol(A,b,D);C=A;i=c[C+4>>2]|0;k=H;c[k>>2]=c[C>>2];c[k+4>>2]=i;Zg();k=a[z>>0]|0;i=a[B>>0]|0;C=16}else{if(!i){lf(A,r,s);ch(x,J);ii(w,x,k);nf(D,A,w);Qt(b,D,k,G,H)}k=a[z>>0]|0;i=a[B>>0]|0;if(!((n|0)!=0&(i|k)<<24>>24==0))C=16}if((C|0)==16){C=0;c[h+(n<<2)>>2]=Lf(k<<24>>24==0?(i<<24>>24?31:30):32,1.0)|0}n=n+1|0}while((n|0)!=(f|0))}if(y|0){n=F+7036|0;o=b+20|0;p=F+212|0;q=F+6488|0;r=B+4|0;s=F+208|0;t=F+6484|0;u=F+6460|0;i=0;do{Gl(J,b,i,m,5.0);Ml(J,Tg(b,i+4|0)|0,D,I,32)|0;if(!(a[D>>0]|0)){if(a[I>>0]|0){c[n>>2]=(i&1)+3;C=24}}else{k=(a[I>>0]|0)==0;if(!(!(+g[u>>2]>.05000000074505806)&k)?(c[n>>2]=(i&1)+3,!k):0)C=24}if((C|0)==24){C=0;c[e>>2]=i;w=o;x=c[w+4>>2]|0;f=B;c[f>>2]=c[w>>2];c[f+4>>2]=x;Xe(z);switch(i|0){case 0:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2];break}case 1:{Ze(A,1.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2]+5.0;break}case 2:{Ze(A,0.0,1.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[r>>2]=+g[p>>2]-+g[q>>2]+5.0;break}case 3:{Ze(A,0.0,0.0);w=A;x=c[w+4>>2]|0;f=z;c[f>>2]=c[w>>2];c[f+4>>2]=x;g[B>>2]=+g[s>>2]-+g[t>>2];break}default:{}}Qt(b,B,z,G,H)}i=i+1|0}while((i|0)!=(y|0))}Zn();if((c[F+6720>>2]|0)==(b|0)){Xe(I);i=F+6736|0;k=c[i>>2]|0;if((k|0)==3)if(!(a[F+234>>0]|0))C=35;else{Oh(D,1,0,0.0,0.0);B=D;C=c[B+4>>2]|0;k=I;c[k>>2]=c[B>>2];c[k+4>>2]=C;k=c[i>>2]|0;C=34}else C=34;if((C|0)==34)if((k|0)==4){Oh(D,2,0,0.0,0.0);A=D;B=c[A>>2]|0;A=c[A+4>>2]|0;e=I;c[e>>2]=B;c[e+4>>2]=A;m=(c[j>>2]=B,+g[j>>2])}else C=35;if((C|0)==35)m=+g[I>>2];if(!(!(m!=0.0)?!(+g[I+4>>2]!=0.0):0)){m=+g[F+12>>2]*600.0;mf(I,+bf(m*+sf(+g[F+156>>2],+g[F+160>>2])));a[F+6732>>0]=0;a[F+6751>>0]=1;c[h>>2]=Lf(32,1.0)|0;nf(E,b+36|0,I);c[D>>2]=c[E>>2];c[D+4>>2]=c[E+4>>2];ol(J,b,D);h=J;I=c[h+4>>2]|0;J=H;c[J>>2]=c[h>>2];c[J+4>>2]=I}}if(+g[H>>2]!=3402823466385288598117041.0e14){I=c[H+4>>2]|0;J=b+36|0;c[J>>2]=c[H>>2];c[J+4>>2]=I;ll(b)}if(+g[G>>2]!=3402823466385288598117041.0e14){$e(D,G);I=D;H=c[I>>2]|0;I=c[I+4>>2]|0;J=b+12|0;c[J>>2]=H;c[J+4>>2]=I;J=b+20|0;c[J>>2]=H;c[J+4>>2]=I;ll(b)}H=b+36|0;I=c[H+4>>2]|0;J=b+28|0;c[J>>2]=c[H>>2];c[J+4>>2]=I}l=K;return}function wl(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;d=b+164|0;e=b+172|0;if(+g[d>>2]!=+g[e>>2]?+g[b+168>>2]!=+g[b+176>>2]:0)Yg(a,d,e);else rl(a,0.0,0.0,+g[b+4>>2],+g[b+8>>2]);return}function xl(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+g[b+20>>2];c=+g[b+24>>2];rl(a,d,c,d+ +g[b+28>>2],c+ +g[b+32>>2]);return}function yl(a,b){a=a|0;b=+b;var c=0;g[a>>2]=+g[a>>2]-b;c=a+4|0;g[c>>2]=+g[c>>2]-b;c=a+8|0;g[c>>2]=+g[c>>2]+b;a=a+12|0;g[a>>2]=+g[a>>2]+b;return}function zl(a){a=a|0;return ((a&100663296|0)==0?a>>>24&1|2:4)|0}function Al(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;c=+g[b+24>>2];c=c+ +fl(b);e=+g[b+20>>2];d=e+ +g[b+36>>2];rl(a,e,c,d,c+ +gl(b));return}function Bl(a,b){a=a|0;b=b|0;Ze(a,+g[b>>2],+g[b+12>>2]);return}function Cl(a,b){a=a|0;b=b|0;var d=0,e=0;e=b+8|0;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Dl(b){b=b|0;var d=0.0,e=0.0,f=0.0,h=0,i=0.0,j=0,k=0.0,m=0.0,n=0,o=0.0,p=0,q=0.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;D=l;l=l+80|0;y=D+56|0;z=D+40|0;v=D+32|0;w=D+72|0;A=D+16|0;B=D;C=c[11106]|0;h=c[C+6436>>2]|0;x=(b|0)==1;p=Eg(h,x?7641:7650,0)|0;b=(a[(x?h+133|0:h+132|0)>>0]|0)!=0;if(b)f=+g[C+5452>>2];else f=0.0;xl(y,h);d=+g[h+96>>2];if(x){q=+g[y+12>>2];rl(z,d+ +g[h+20>>2],q-+g[C+5452>>2],+g[y+8>>2]-f-d,q-d)}else{q=+g[y+8>>2];rl(z,q-+g[C+5452>>2],d+ +g[h+24>>2],q-d,+g[y+12>>2]-f-d);d=+fl(h);if(!(c[h+8>>2]&1024))e=0.0;else e=+gl(h);u=z+4|0;g[u>>2]=+g[u>>2]+(d+e)}if(!(+Ul(z)<=0.0)?!(+ki(z)<=0.0):0){if(x)b=b?4:12;else{u=c[h+8>>2]|0;b=((u&1|0)==0?0:u>>>9&2^2)|(b?0:8)}t=h+616|0;s=c[t>>2]|0;u=z+8|0;r=Lf(14,1.0)|0;Hw(s,z,u,r,+g[h+92>>2],b);q=-+gi(+(~~((+g[u>>2]-+g[z>>2]+-2.0)*.5)|0),0.0,3.0);r=z+12|0;s=z+4|0;Ze(v,q,-+gi(+(~~((+g[r>>2]-+g[s>>2]+-2.0)*.5)|0),0.0,3.0));Dj(z,v);if(x)o=+Ul(z);else o=+ki(z);n=x?h+108|0:h+112|0;f=+g[(x?h+36|0:h+40|0)>>2]-f;e=+g[(x?h+52|0:h+56|0)>>2];d=+pg(e,f);if(!(d>0.0))Bb(7659,5025,6258,7711);k=+g[n>>2];q=o*(f/+pg(d,1.0));q=+gi(q,+g[C+5460>>2],o);m=q/o;a[v>>0]=0;a[w>>0]=0;h=c[C+6464>>2]|0;Ml(z,p,w,v,8192)|0;f=+pg(1.0,e-f);i=o-q;d=i*+Kf(k/f)/o;b=a[v>>0]|0;if(m<1.0&b<<24>>24!=0){j=x?C+10560|0:C+10564|0;k=+Kf((+g[(x?C+208|0:C+212|0)>>2]-(x?+g[z>>2]:+g[s>>2]))/o);_g(p);if((h|0)==(p|0)){b=0;e=m*.5;d=+g[j>>2]}else{b=!(k>=d)|!(k<=m+d);e=m*.5;d=b?0.0:k-d-e;g[j>>2]=d}d=+(~~(f*+Kf((k-d-e)/(1.0-m))+.5)|0);g[n>>2]=d;d=i*+Kf(d/f)/o;if(b)g[j>>2]=k-d-e;b=a[v>>0]|0}if(!(b<<24>>24))b=a[w>>0]|0?16:15;else b=17;b=Lf(b,1.0)|0;yg(A);if(x){m=+Pl(+g[z>>2],+g[u>>2],d);o=+g[s>>2];q=+sf(q+m,+g[y+8>>2]);rl(B,m,o,q,+g[r>>2]);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}else{k=+g[z>>2];o=+Pl(+g[s>>2],+g[r>>2],d);m=+g[u>>2];rl(B,k,o,m,+sf(q+o,+g[y+12>>2]));c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];c[A+12>>2]=c[B+12>>2]}Hw(c[t>>2]|0,A,A+8|0,b,+g[C+5456>>2],15)}l=D;return} +function El(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0;f=+g[b>>2];e=+g[b+4>>2];Ze(a,f+(+g[c>>2]-f)*+g[d>>2],e+(+g[c+4>>2]-e)*+g[d+4>>2]);return}function Fl(a,b){a=a|0;b=b|0;xw(a,c[a+92>>2]|0,c[a+84>>2]|0,b);Jt(a);return}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,h=0,i=0,j=0.0;i=l;l=l+32|0;f=i+8|0;h=i;xl(f,b);if(e==0.0){Ze(h,1.0,1.0);Vn(f+8|0,h)}switch(c|0){case 0:{j=+g[f+4>>2];rl(a,+g[f>>2]+d,j,+g[f+8>>2]-d,j+e);break}case 1:{j=+g[f+8>>2];rl(a,j-e,+g[f+4>>2]+d,j,+g[f+12>>2]-d);break}case 2:{j=+g[f+12>>2];rl(a,+g[f>>2]+d,j-e,+g[f+8>>2]-d,j);break}case 3:{j=+g[f>>2];rl(a,j,+g[f+4>>2]+d,j+e,+g[f+12>>2]-d);break}default:Bb(18388,5025,5448,13351)}l=i;return}function Hl(){return +(+xn(c[(c[11106]|0)+6436>>2]|0))}function Il(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))fv(a,gv(a,b)|0);c[a>>2]=b;return}function Jl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))hv(a,iv(a,b)|0);c[a>>2]=b;return}function Kl(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))jv(a,kv(a,b)|0);c[a>>2]=b;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){fv(a,gv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Ml(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;q=t;s=c[11106]|0;p=Zi()|0;if(!(h&256)){r=(h&30|0)==0?h|2:h;j=s+6440|0;k=c[j>>2]|0;m=(r&32|0)!=0;if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=p;h=kh(b,d)|0;if((((r&4096|0)!=0?(a[s+7040>>0]|0)!=0:0)?(c[s+7044>>2]&4|0)==0:0)?hh(32)|0:0){_g(d);u=+g[s+6460>>2]+9.999999747378752e-05;if(!(Nh(u,u-+g[s+12>>2],.009999999776482582,.699999988079071)|0)){i=1;h=0}else{dj(p);i=1;h=1}}else{i=h;h=0}if(m?(c[s+6444>>2]|0)==(p|0):0)c[j>>2]=k;if((r&64|0)==0|i^1)if(i)o=23;else{i=0;k=h}else{m=c[s+6456>>2]|0;if(i&((m|0)==(d|0)|(m|0)==0))o=23;else{i=0;k=h}}do if((o|0)==23){if(r&1024)if(((a[s+233>>0]|0)==0?(a[s+234>>0]|0)==0:0)?(a[s+235>>0]|0)==0:0)o=27;else{n=h;o=50}else o=27;if((o|0)==27){if(r&2|0?a[s+968>>0]|0:0){Wg(d,p);if(!(r&8192))Xg(d,p);dj(p)}if((r&4|0)!=0?(a[s+968>>0]|0)!=0:0)o=36;else if((r&16|0)!=0?(a[s+973>>0]|0)!=0:0)o=36;if((o|0)==36){if(!(r&2048))Wg(d,p);else Zg();dj(p);h=1}if((r&8|0)!=0?(a[s+978>>0]|0)!=0:0){if(!((r&1|0)!=0?+g[s+1008>>2]>=+g[s+128>>2]:0))h=1;Zg()}if(((r&1|0)!=0?(c[s+6464>>2]|0)==(d|0):0)?+g[s+988>>2]>0.0:0){if(!(h|(Oj(0,1)|0))){i=1;k=0;break}}else{n=h;o=50}}if((o|0)==50?!n:0){i=1;k=0;break}a[s+6750>>0]=1;i=1;k=1}while(0);do if(((c[s+6668>>2]|0)==(d|0)?(a[s+6750>>0]|0)==0:0)?(a[s+6751>>0]|0)!=0:0){o=c[s+6464>>2]|0;if(!((o|0)==0|(o|0)==(d|0))?(o|0)!=(c[p+100>>2]|0):0){m=i;break}m=1}else m=i;while(0);j=s+6676|0;do if((c[j>>2]|0)==(d|0)){i=s+6672|0;o=(c[i>>2]|0)==(d|0);o=o|(Pn(0,r<<1&2|1)|0);h=k|o;if(!o?(c[s+6464>>2]|0)!=(d|0):0){h=k;break}c[i>>2]=d;Wg(d,p);if(!(r&8192))Xg(d,p);c[s+6480>>2]=15}else h=k;while(0);a:do if((c[s+6464>>2]|0)==(d|0)){switch(c[s+6496>>2]|0){case 1:break;case 2:{if((c[j>>2]|0)==(d|0)){i=0;break a}Zg();i=0;break a}default:{i=0;break a}}if(a[s+6477>>0]|0){lf(q,s+208|0,b);b=q;d=c[b+4>>2]|0;q=s+6484|0;c[q>>2]=c[b>>2];c[q+4>>2]=d}if(!(a[s+216>>0]|0)){do if(!((r&2|0)==0|m^1)){if(r&1|0?+g[s+1008>>2]>=+g[s+128>>2]:0)break;h=h|(a[s+7040>>0]|0)==0}while(0);Zg();i=0}else i=1;if(!(r&8192))a[s+6750>>0]=1}else i=0;while(0);if(e|0)a[e>>0]=m&1;if(f)a[f>>0]=i&1}else{if(e|0)a[e>>0]=0;if(f|0)a[f>>0]=0;if((c[s+6464>>2]|0)==(d|0)){Zg();h=0}else h=0}l=t;return h|0}function Nl(b,d,e){b=b|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;j=r+56|0;k=r+48|0;m=r+40|0;n=r+32|0;o=r+24|0;p=r+16|0;q=r+8|0;f=r;g=c[(c[11106]|0)+6436>>2]|0;Ze(m,e,e);lf(k,d,m);Ze(o,e,e);nf(n,d,o);Yg(j,k,n);d=dh(j,b,0)|0;b=Ml(j,b,k,m,0)|0;if(d?(h=a[k>>0]|0,m=Lf((a[m>>0]|0)==0|h<<24>>24==0?(h<<24>>24?34:33):35,1.0)|0,Un(n,j),h=g+616|0,j=c[h>>2]|0,Ow(j,n,+pg(2.0,e),m,12),i=e*.707099974155426+-1.0,a[k>>0]|0):0){Ze(o,.5,.5);Vn(n,o);m=c[h>>2]|0;Ze(p,i,i);nf(o,n,p);e=-i;Ze(f,e,e);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0);m=c[h>>2]|0;Ze(p,i,e);nf(o,n,p);Ze(f,e,i);nf(q,n,f);Fw(m,o,q,Lf(0,1.0)|0,1.0)}l=r;return b|0}function Ol(a,b){a=a|0;b=b|0;Ze(a,+g[b+8>>2],+g[b+4>>2]);return}function Pl(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function Ql(){var b=0,d=0,e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+48|0;q=E+32|0;r=E+24|0;v=E+16|0;w=E+8|0;y=E;d=c[11106]|0;B=Zi()|0;C=B+468|0;D=c[C>>2]|0;if(!D)Bb(10588,5025,12544,10724);gg();aj();s=B+616|0;mw(c[s>>2]|0);b=D+40|0;u=B+224|0;t=+pg(+g[b>>2],+g[u>>2]);g[b>>2]=t;g[u>>2]=t;u=D+4|0;b=c[u>>2]|0;if(!(b&16))g[B+244>>2]=+pg(+g[D+32>>2],+g[D+24>>2]);if(((b&1|0)==0?(a[B+149>>0]|0)==0:0)?(x=+g[D+28>>2],A=D+16|0,(c[A>>2]|0)>1):0){p=B+20|0;j=d+7036|0;k=D+44|0;m=x+1.0;n=B+488|0;o=B+496|0;b=-1;i=1;while(1){h=+g[p>>2];h=h+ +Ym(i);d=(c[D>>2]|0)+i|0;Ze(r,h+-4.0,x);Ze(v,h+4.0,t);Yg(q,r,v);Sg(d);if(fh(q,d,0)|0)f=b;else{a[r>>0]=0;a[v>>0]=0;if(!(c[u>>2]&2)){Ml(q,d,r,v,0)|0;e=a[r>>0]|0;d=a[v>>0]|0;if((d|e)<<24>>24!=0?(c[j>>2]=4,d<<24>>24!=0):0){f=(c[(tr(k,i)|0)+8>>2]&2|0)==0;b=f?i:b;if(!(a[v>>0]|0)){d=a[r>>0]|0;z=16}else d=29}else{d=e;z=16}}else{d=0;z=16}if((z|0)==16){z=0;d=d<<24>>24?28:27}f=Lf(d,1.0)|0;h=+(~~h|0);e=c[s>>2]|0;Ze(w,h,+pg(m,+g[n>>2]));Ze(y,h,+sf(t,+g[o>>2]));Fw(e,w,y,f,1.0);f=b}i=i+1|0;b=c[A>>2]|0;if((i|0)>=(b|0))break;else b=f}if((f|0)!=-1){e=D+9|0;if(!((a[e>>0]|0)!=0|(b|0)<0)){d=D+44|0;b=0;while(1){z=c[(tr(d,b)|0)>>2]|0;c[(tr(d,b)|0)+4>>2]=z;if((b|0)<(c[A>>2]|0))b=b+1|0;else break}}a[e>>0]=1;vr(f,+Fr(D,f));b=1}else b=0}else b=0;a[D+9>>0]=b;c[C>>2]=0;g[B+464>>2]=0.0;g[B+220>>2]=+(~~(+g[B+20>>2]+ +g[B+456>>2]+0.0)|0);l=E;return}function Rl(){var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;b=c[11106]|0;f=b+10628|0;if(a[f>>0]|0){oj(8513,g);d=b+10632|0;e=c[d>>2]|0;if(e|0){if((e|0)==(c[979]|0))Haa(e)|0;else Daa(e)|0;c[d>>2]=0}b=b+10636|0;if((bo(c[b>>2]|0)|0)>1){th(co(c[b>>2]|0)|0);eo(c[b>>2]|0)}a[f>>0]=0}l=g;return}function Sl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Tl(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Ul(a){a=a|0;return +(+g[a+8>>2]-+g[a>>2])}function Vl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;c[d>>2]=a;e=c[11106]|0;f=e+6384|0;h=c[($k(f)|0)>>2]|0;a:do if(((h|0)!=(a|0)?(c[h+624>>2]|0)!=(a|0):0)?(b=c[f>>2]|0,(b|0)>1):0){b=b+-2|0;while(1){if((c[(ni(f,b)|0)>>2]|0)==(a|0))break;if((b|0)>0)b=b+-1|0;else break a}Wl(f,(c[e+6392>>2]|0)+(b<<2)|0)|0;al(f,d)}while(0);l=g;return}function Wl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+8|0;e=c[d>>2]|0;if(e>>>0<=b>>>0?(f=c[a>>2]|0,(e+(f<<2)|0)>>>0>b>>>0):0){e=b-e>>2;rca(b|0,b+4|0,(f-e<<2)+-4|0)|0;c[a>>2]=(c[a>>2]|0)+-1;return (c[d>>2]|0)+(e<<2)|0}Bb(14279,39072,1153,14308);return 0}function Xl(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){hv(a,iv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function Yl(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0;k=l;l=l+16|0;i=k+4|0;h=k;j=Zi()|0;d=c[11106]|0;if(b<=0.0)b=+Zl();n=+g[d+5428>>2];f=a+-1|0;m=+(f|0);o=+pg(1.0,+(~~((b-n*m)/+(a|0))|0));g[i>>2]=o;g[h>>2]=+pg(1.0,+(~~(b-(o+n)*m)|0));e=j+396|0;Xl(e,h);if((a|0)>1){d=0;do{Xl(e,i);d=d+1|0}while((d|0)!=(f|0))}c[j+376>>2]=c[(_l(e)|0)>>2];l=k;return}function Zl(){var a=0.0,b=0,c=0;c=l;l=l+16|0;b=c;a=+g[(wg()|0)+376>>2];if(a<0.0){bm(b);a=+pg(1.0,a+ +g[b>>2])}l=c;return +(+(~~a|0))}function _l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function $l(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function am(a){a=a|0;return (c[a>>2]|0)==0|0}function bm(a){a=a|0;var b=0,c=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;c=b;e=wg()|0;qh(d);lf(c,e+220|0,e+20|0);lf(a,d,c);l=b;return}function cm(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;b=e;c[b>>2]=a;d=c[11106]|0;if(!a){a=Wh()|0;c[b>>2]=a}Vh(a);dm(d+6528|0,b);cw(c[(c[d+6436>>2]|0)+616>>2]|0,(c[(c[b>>2]|0)+68>>2]|0)+4|0);l=e;return}function dm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){lv(a,mv(a,d+1|0)|0);d=c[a>>2]|0}e=c[b>>2]|0;b=c[a+8>>2]|0;c[a>>2]=d+1;c[b+(d<<2)>>2]=e;return}function em(){var a=0;a=c[11106]|0;ew(c[(c[a+6436>>2]|0)+616>>2]|0);a=a+6528|0;fm(a);if(gm(a)|0)a=Wh()|0;else a=c[(hm(a)|0)>>2]|0;Vh(a);return}function fm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function gm(a){a=a|0;return (c[a>>2]|0)==0|0}function hm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function im(a,b){a=a|0;b=b|0;var d=0;d=Zi()|0;if(b){b=d+372|0;c[b>>2]=c[b>>2]|a;a=b}else{b=d+372|0;c[b>>2]=c[b>>2]&~a;a=b}Ll(d+384|0,a);return}function jm(){var a=0,b=0;b=Zi()|0;a=b+384|0;km(a);if(lm(a)|0)a=1;else a=c[(mm(a)|0)>>2]|0;c[b+372>>2]=a;return}function km(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function lm(a){a=a|0;return (c[a>>2]|0)==0|0}function mm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+(b+-1<<2)|0;else Bb(39063,39072,1128,14585);return 0}function nm(a){a=a|0;im(1,a);return}function om(){jm();return}function pm(a){a=a|0;im(2,a);return}function qm(){jm();return}function rm(a){a=+a;var b=0,c=0,d=0;b=l;l=l+16|0;c=b;g[c>>2]=a;d=Zi()|0;g[d+380>>2]=a;Xl(d+408|0,c);l=b;return}function sm(){var a=0,b=0.0,c=0;c=Zi()|0;a=c+408|0;$l(a);if(am(a)|0)b=-1.0;else b=+g[(_l(a)|0)>>2];g[c+380>>2]=b;return}function tm(a){a=a|0;Ye(a+4|0);return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){nv(a,ov(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*20|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];return}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*20|0)|0;else Bb(39063,39072,1128,14585);return 0}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function xm(a){a=a|0;if(a>>>0<21)return 1304+(a<<3)|0;else Bb(13365,5025,6599,13404);return 0}function ym(a,b){a=a|0;b=b|0;return b+(c[a+4>>2]|0)|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){pv(a,qv(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*12|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];return}function Am(a,b,d){a=a|0;b=b|0;d=+d;c[a>>2]=b;g[a+4>>2]=d;return}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=c[d>>2];c[a+8>>2]=c[d+4>>2];return}function Cm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*12|0)|0;else Bb(39063,39072,1128,14585);return 0}function Dm(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Em(a){a=a|0;var b=0;do switch(a|0){case 0:{b=33605;break}case 1:{b=33641;break}case 2:{b=7780;break}case 3:{b=7789;break}case 4:{b=7797;break}case 5:{b=7805;break}case 6:{b=7812;break}case 7:{b=7825;break}case 8:{b=7833;break}case 9:{b=7848;break}case 10:{b=7862;break}case 11:{b=7870;break}case 12:{b=7884;break}case 13:{b=7901;break}case 14:{b=7911;break}case 15:{b=7923;break}case 16:{b=7937;break}case 17:{b=7958;break}case 18:{b=7978;break}case 19:{b=7988;break}case 20:{b=7999;break}case 21:{b=33744;break}case 22:{b=8016;break}case 23:{b=8030;break}case 24:{b=8043;break}case 25:{b=8050;break}case 26:{b=8064;break}case 27:{b=33131;break}case 28:{b=8077;break}case 29:{b=8094;break}case 30:{b=8110;break}case 31:{b=8121;break}case 32:{b=8139;break}case 33:{b=8156;break}case 34:{b=8168;break}case 35:{b=8187;break}case 36:{b=33832;break}case 37:{b=8205;break}case 38:{b=33842;break}case 39:{b=8222;break}case 40:{b=8243;break}case 41:{b=8258;break}case 42:{b=8279;break}case 43:{b=8294;break}case 44:{b=8307;break}default:Bb(18388,5025,6698,35325)}while(0);return b|0}function Fm(a){a=a|0;var b=0,d=0;b=c[11106]|0;d=c[b+6436>>2]|0;if(!d)Bb(8382,5025,6759,35216);a:do if(!(a&4))switch(a&3){case 3:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=(c[a+624>>2]|0)==(c[d+624>>2]|0);break a}case 2:{a=(c[b+6664>>2]|0)==(c[d+624>>2]|0);break a}case 1:{a=c[b+6664>>2]|0;if(!a){a=0;break a}a=ei(a,d)|0;break a}default:{a=(c[b+6664>>2]|0)==(d|0);break a}}else a=(c[b+6664>>2]|0)!=0;while(0);return a|0}function Gm(b){b=b|0;var d=0;d=c[11106]|0;if((a[b+144>>0]|0)!=0?(c[b+632>>2]|0)==(b|0):0)if(!(c[b+8>>2]&524288))b=1;else b=(c[d+6664>>2]|0)==(b|0);else b=0;return b|0}function Hm(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+28>>2])}function Im(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+32>>2])}function Jm(a){a=a|0;var b=0,d=0;d=(c[(c[11106]|0)+6436>>2]|0)+20|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function Km(a,b){a=a|0;b=b|0;dl(wg()|0,a,b);return}function Lm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)dl(a,b,c);return}function Mm(a,b){a=a|0;b=b|0;el(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Nm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)el(a,b,c);return}function Om(a,b){a=a|0;b=b|0;hl(c[(c[11106]|0)+6436>>2]|0,a,b);return}function Pm(){return (a[(wg()|0)+147>>0]|0)!=0|0}function Qm(){return (a[(wg()|0)+150>>0]|0)!=0|0}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;a=kk(a)|0;if(a|0)hl(a,b,c);return}function Sm(a){a=a|0;if(a){a=kk(a)|0;if(a|0)dj(a)}else dj(0);return}function Tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;h=f;g=c[11106]|0;c[g+6580>>2]=1;Yg(h,a,b);b=g+6628|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];c[g+6644>>2]=d;c[g+6648>>2]=e;l=f;return}function Um(a){a=a|0;var b=0,d=0,e=0;b=c[11106]|0;e=a;d=c[e+4>>2]|0;a=b+6616|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;c[b+6572>>2]=1;return}function Vm(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;a[e+6624>>0]=b&1;c[e+6576>>2]=d|0?d:1;return}function Wm(){c[(c[11106]|0)+6584>>2]=1;return}function Xm(a){a=+a;var b=0;b=c[11106]|0;g[b+6652>>2]=a;c[b+6588>>2]=1;return}function Ym(a){a=a|0;var b=0,d=0,e=0.0;d=c[(wg()|0)+468>>2]|0;if(!d)Bb(10588,5025,12365,33522);if((a|0)<0)a=c[d+12>>2]|0;b=d+44|0;if((a|0)<(c[b>>2]|0)){e=+g[(tr(b,a)|0)>>2];return +(+Pl(+g[d+20>>2],+g[d+24>>2],e))}else Bb(10602,5025,12369,33522);return +(0.0)}function Zm(){var a=0,b=0;b=l;l=l+16|0;a=b;bm(a);l=b;return +(+g[a>>2])}function _m(a){a=a|0;var b=0,d=0;d=(wg()|0)+68|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function $m(a){a=a|0;var b=0,d=0;d=(wg()|0)+76|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function an(){var a=0;a=wg()|0;return +(+g[a+76>>2]-+g[a+68>>2])}function bn(){return +(+g[(c[11106]|0)+6228>>2])}function cn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5424>>2])}function dn(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5408>>2]*2.0)}function en(){var a=0;a=c[11106]|0;return +(+g[a+5424>>2]+(+g[a+6228>>2]+ +g[a+5408>>2]*2.0))}function fn(){return c[(Zi()|0)+616>>2]|0}function gn(){return c[(c[11106]|0)+6224>>2]|0}function hn(){return +(+g[(c[11106]|0)+6228>>2])}function jn(a){a=a|0;var b=0,d=0;d=(c[11106]|0)+6236|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function kn(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;g[d+612>>2]=a;a=+ji(d);g[b+6248>>2]=a;g[b+6228>>2]=a;return}function ln(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+16|0;d=b;c=wg()|0;lf(d,c+220|0,c+20|0);nf(a,d,c+108|0);l=b;return}function mn(){var a=0;a=wg()|0;return +(+g[a+220>>2]-+g[a+20>>2]+ +g[a+108>>2])}function nn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;d=b+8|0;f=Zi()|0;lf(d,f+20|0,f+108|0);nf(e,d,a);d=f+220|0;h=e;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function on(a){a=+a;var b=0;b=Zi()|0;a=+g[b+20>>2]-+g[b+108>>2]+a;g[b+220>>2]=a;b=b+244|0;g[b>>2]=+pg(+g[b>>2],a);return}function pn(a){a=+a;var b=0;b=Zi()|0;a=+g[b+24>>2]-+g[b+112>>2]+a;g[b+224>>2]=a;b=b+248|0;g[b>>2]=+pg(+g[b>>2],a);return}function qn(a){a=a|0;var b=0;b=wg()|0;lf(a,b+236|0,b+20|0);return}function rn(a){a=a|0;var b=0,d=0;d=(wg()|0)+220|0;b=c[d+4>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=b;return}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=l;l=l+16|0;e=b;f=Zi()|0;d=f+220|0;h=a;g=c[h+4>>2]|0;a=d;c[a>>2]=c[h>>2];c[a+4>>2]=g;a=f+244|0;ql(e,a,d);d=c[e+4>>2]|0;c[a>>2]=c[e>>2];c[a+4>>2]=d;l=b;return}function tn(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+108>>2])}function un(){return +(+g[(c[(c[11106]|0)+6436>>2]|0)+112>>2])}function vn(){return +(+wn(c[(c[11106]|0)+6436>>2]|0))}function wn(a){a=a|0;return +(+pg(0.0,+g[a+52>>2]-(+g[a+36>>2]-+g[a+136>>2])))}function xn(a){a=a|0;return +(+pg(0.0,+g[a+56>>2]-(+g[a+40>>2]-+g[a+140>>2])))}function yn(a){a=+a;var b=0;b=Zi()|0;g[b+116>>2]=a;g[b+124>>2]=0.0;return}function zn(a){a=+a;var b=0;b=Zi()|0;a=+fl(b)+a;g[b+120>>2]=a+ +gl(b);g[b+128>>2]=0.0;return}function An(a,b){a=+a;b=+b;var d=0,e=0.0,f=0,h=0;f=Zi()|0;if(!(b>=0.0&b<=1.0))Bb(8398,5025,7186,32787);a=+(~~(+g[f+112>>2]+a)|0);d=f+120|0;g[d>>2]=a;g[f+128>>2]=b;if(b<=0.0?+g[f+88>>2]>=a:0)g[d>>2]=0.0;else h=6;if(((h|0)==6?b>=1.0:0)?(e=+g[f+56>>2],e-+g[f+88>>2]+ +g[(c[11106]|0)+5424>>2]<=a):0)g[d>>2]=e;return}function Bn(a){a=+a;var b=0;b=Zi()|0;An(+g[b+232>>2]-+g[b+24>>2]+(+g[b+260>>2]*a+(a+-.5)*+g[(c[11106]|0)+5424>>2]*2.0),a);return}function Cn(a){a=a|0;var b=0;if((a|0)>-2){b=Zi()|0;c[b+700>>2]=a+1+(c[b+684>>2]|0);c[b+704>>2]=2147483647;return}else Bb(8447,5025,7214,35010)}function Dn(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;d=j+16|0;e=j+8|0;g=j;h=c[11106]|0;b=c[h+6436>>2]|0;do if(a[b+150>>0]|0?(i=h+6664|0,f=c[i>>2]|0,(f|0)==(c[b+636>>2]|0)):0){b=h+6753|0;if((a[b>>0]|0)==0?(c[h+6756>>2]|0)==0:0)break;if((c[h+6740>>2]|0)==(c[f+324>>2]|0)?(a[b>>0]=0,c[h+6756>>2]=c[f+280>>2],lf(e,f+288|0,f+20|0),i=c[i>>2]|0,lf(g,i+296|0,i+20|0),Yg(d,e,g),i=h+6760|0,c[i>>2]=c[d>>2],c[i+4>>2]=c[d+4>>2],c[i+8>>2]=c[d+8>>2],c[i+12>>2]=c[d+12>>2],Lh(),!(ek()|0)):0)Bn(.5)}while(0);l=j;return}function En(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,h=0,i=0,k=0,m=0.0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=l;l=l+96|0;y=z+80|0;v=z+32|0;w=z+72|0;x=z+16|0;q=z+56|0;r=z+40|0;s=z+8|0;u=z+48|0;i=z;k=Zi()|0;if(!(a[k+149>>0]|0)){n=c[11106]|0;if(!b)Bb(8460,5025,7321,33589);if(!d)t=b+(v9(b)|0)|0;else t=d;d=k+220|0;Ze(v,+g[d>>2],+g[k+224>>2]+ +g[k+256>>2]);e=+g[k+380>>2];h=e>=0.0;do if((t-b|0)<2001|h){if(h)e=+rh(d,e);else e=0.0;tj(w,b,t,0,e);nf(y,v,w);Yg(x,v,y);$g(w,0.0);if(dh(x,0,0)|0){v=x;w=c[v+4>>2]|0;x=i;c[x>>2]=c[v>>2];c[x+4>>2]=w;c[y>>2]=c[i>>2];c[y+4>>2]=c[i+4>>2];rj(y,b,t,e);break}else break}else{p=+bn();f=+g[k+488>>2];m=+g[k+496>>2];Ze(w,0.0,0.0);e=+g[v+4>>2];if(e<=m){h=v;k=c[h+4>>2]|0;i=x;c[i>>2]=c[h>>2];c[i+4>>2]=k;m=(c[j>>2]=k,+g[j>>2]);if((a[n+10628>>0]|0)==0?(o=~~((f-e)/p),(o|0)>0):0){if(t>>>0>b>>>0){d=0;do{n=x9(b,10)|0;b=((n|0)==0?t:n)+1|0;d=d+1|0}while(b>>>0>>0&(d|0)<(o|0));e=+(d|0)}else e=0.0;g[x+4>>2]=p*e+m}if(b>>>0>>0){Ze(r,3402823466385288598117041.0e14,p);nf(y,x,r);Yg(q,x,y);h=q+4|0;i=q+12|0;k=x+4|0;do{d=x9(b,10)|0;if(fh(q,0,0)|0)break;tj(r,b,d,0,-1.0);g[w>>2]=+pg(+g[w>>2],+g[r>>2]);A=x;n=c[A+4>>2]|0;o=s;c[o>>2]=c[A>>2];c[o+4>>2]=n;c[y>>2]=c[s>>2];c[y+4>>2]=c[s+4>>2];pj(y,b,d,0);b=((d|0)==0?t:d)+1|0;g[h>>2]=p+ +g[h>>2];g[i>>2]=p+ +g[i>>2];g[k>>2]=p+ +g[k>>2]}while(b>>>0>>0);if(b>>>0>>0){d=0;do{A=x9(b,10)|0;b=((A|0)==0?t:A)+1|0;d=d+1|0}while(b>>>0>>0);e=+(d|0)}else e=0.0;g[k>>2]=p*e+ +g[k>>2]}lf(u,x,v);A=w+4|0;g[A>>2]=+g[u+4>>2]+ +g[A>>2]}nf(x,v,w);Yg(y,v,x);bh(y,0.0);dh(y,0,0)|0}while(0)}l=z;return}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;mk(a,e);l=d;return}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;Sk(0,a);mk(b,c);Xk(1);return}function Hn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Gn(a,b,f);l=e;return}function In(a,b){a=a|0;b=b|0;Sk(0,(c[11106]|0)+5520|0);mk(a,b);Xk(1);return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;In(a,e);l=d;return}function Kn(a,b){a=a|0;b=b|0;if(+g[(c[(c[11106]|0)+6436>>2]|0)+380>>2]<0.0){rm(0.0);mk(a,b);sm()}else mk(a,b);return}function Ln(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Kn(a,e);l=d;return}function Mn(){var b=0,d=0.0,e=0,f=0;b=Zi()|0;if(!(a[b+149>>0]|0)){f=c[11106]|0;e=b+252|0;d=+g[f+5408>>2];g[e>>2]=+pg(+g[e>>2],+g[f+6228>>2]+d*2.0);b=b+256|0;g[b>>2]=+pg(+g[b>>2],d)}return}function Nn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0.0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;j=u+64|0;n=u+56|0;p=u+40|0;q=u+24|0;r=u+8|0;s=u;t=u+16|0;f=Zi()|0;if(!(a[f+149>>0]|0)){k=c[11106]|0;m=+Zl();tj(n,b,0,1,-1.0);f=f+220|0;h=k+5408|0;Ze(q,m,+g[n+4>>2]+ +g[h>>2]*2.0);nf(j,f,q);Yg(p,f,j);if(+g[n>>2]>0.0)i=+g[k+5428>>2];else i=0.0;Ze(s,m+i,+g[h>>2]*2.0);nf(r,f,s);nf(j,r,n);Yg(q,f,j);bh(q,+g[h>>2]);if(dh(q,0,0)|0?(r=k+11148|0,s=(zf(r,3073,d,e)|0)+(k+11148)|0,o=p+8|0,Ze(j,0.0,.5),sj(p,o,r,s,0,j,0),+g[n>>2]>0.0):0){Ze(t,+g[o>>2]+ +g[k+5428>>2],+g[p+4>>2]+ +g[h>>2]);c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];pj(j,b,0,1)}}l=u;return}function On(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;Nn(a,b,f);l=e;return}function Pn(a,b){a=a|0;b=b|0;return +Mh(a,b)>0.0|0}function Qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0.0,h=0.0,i=0,k=0.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;A=l;l=l+96|0;z=A+72|0;y=A+64|0;r=A+56|0;s=A+40|0;t=A+48|0;u=A+32|0;v=A+16|0;w=A+81|0;x=A+80|0;m=A+8|0;n=A;o=Zi()|0;if(!(a[o+149>>0]|0)){p=c[11106]|0;q=Eg(o,b,0)|0;tj(r,b,0,1,-1.0);C=o+220|0;i=c[C+4>>2]|0;B=s;c[B>>2]=c[C>>2];c[B+4>>2]=i;f=(c[j>>2]=i,+g[j>>2]);i=p+5408|0;k=+g[i>>2];if(e&512|0?(h=+g[o+256>>2],k>2]=h-k+f;B=d;C=c[B+4>>2]|0;d=u;c[d>>2]=c[B>>2];c[d+4>>2]=C;d=p+5404|0;h=+g[r>>2]+ +g[d>>2]*2.0;k=+g[r+4>>2]+k*2.0;c[z>>2]=c[u>>2];c[z+4>>2]=c[u+4>>2];ph(t,z,h,k);nf(z,s,t);Yg(v,s,z);bh(v,+g[i>>2]);if(dh(v,q,0)|0){C=Ml(v,q,w,x,(c[o+372>>2]|0)>>>1&1|e)|0;u=a[w>>0]|0;x=Lf(u<<24>>24==0|(a[x>>0]|0)==0?(u<<24>>24?22:21):23,1.0)|0;Bj(v,q,1);u=v;t=c[u+4>>2]|0;B=m;c[B>>2]=c[u>>2];c[B+4>>2]=t;B=v+8|0;t=B;u=c[t+4>>2]|0;w=n;c[w>>2]=c[t>>2];c[w+4>>2]=u;k=+g[p+5412>>2];c[y>>2]=c[m>>2];c[y+4>>2]=c[m+4>>2];c[z>>2]=c[n>>2];c[z+4>>2]=c[n+4>>2];uj(y,z,x,1,k);nf(z,v,d);lf(y,B,d);sj(z,y,b,0,r,p+5468|0,v);d=C}else d=0}else d=0;l=A;return d|0}function Rn(a,b){a=a|0;b=b|0;return Qn(a,b,0)|0}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b;d=(c[11106]|0)+5408|0;e=c[d>>2]|0;g[d>>2]=0.0;Ze(f,0.0,0.0);a=Qn(a,f,512)|0;c[d>>2]=e;l=b;return a|0}function Tn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;j=k+24|0;e=k+16|0;f=k;g=k+8|0;h=k+40|0;i=Zi()|0;if(!(a[i+149>>0]|0)){b=Eg(i,b,0)|0;n=d;m=c[n+4>>2]|0;d=f;c[d>>2]=c[n>>2];c[d+4>>2]=m;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];ph(e,j,0.0,0.0);i=i+220|0;nf(g,i,e);Yg(j,i,g);bh(j,0.0);if(dh(j,b,0)|0)b=Ml(j,b,g,h,0)|0;else b=0}else b=0;l=k;return b|0}function Un(a,b){a=a|0;b=b|0;Ze(a,(+g[b>>2]+ +g[b+8>>2])*.5,(+g[b+4>>2]+ +g[b+12>>2])*.5);return}function Vn(a,b){a=a|0;b=b|0;g[a>>2]=+g[a>>2]-+g[b>>2];a=a+4|0;g[a>>2]=+g[a>>2]-+g[b+4>>2];return}function Wn(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;o=s+32|0;p=s+24|0;q=s+16|0;r=s+8|0;n=s;j=Zi()|0;if(!(a[j+149>>0]|0)){m=j+220|0;nf(p,m,d);Yg(o,m,p);m=i+12|0;if(+g[m>>2]>0.0){Ze(p,2.0,2.0);Ph(o+8|0,p)}bh(o,0.0);do if(dh(o,0,0)|0){d=j+616|0;j=c[d>>2]|0;k=o+8|0;if(+g[m>>2]>0.0){Gw(j,o,k,Mf(i)|0,0.0,15,1.0);i=c[d>>2]|0;Ze(q,1.0,1.0);nf(p,o,q);Ze(n,1.0,1.0);lf(r,k,n);Xw(i,b,p,r,e,f,Mf(h)|0);break}else{Xw(j,b,o,k,e,f,Mf(h)|0);break}}while(0)}l=s;return}function Xn(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var 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.0,z=0,A=0;x=l;l=l+96|0;v=x+72|0;u=x+64|0;s=x+32|0;t=x+16|0;w=x+48|0;k=x+40|0;m=x+80|0;n=x+8|0;o=x;p=Zi()|0;if(!(a[p+149>>0]|0)){q=c[11106]|0;Yn(b);r=Eg(p,8471,0)|0;Zn();if((h|0)>-1){y=+(h|0);Ze(s,y,y)}else{A=q+5404|0;z=c[A+4>>2]|0;h=s;c[h>>2]=c[A>>2];c[h+4>>2]=z}A=p+220|0;nf(u,A,d);af(w,s,2.0);nf(v,u,w);Yg(t,A,v);nf(v,A,s);nf(k,A,s);nf(u,k,d);Yg(w,v,u);bh(t,0.0);if(dh(t,r,0)|0){d=Ml(t,r,k,m,0)|0;A=a[k>>0]|0;m=Lf(A<<24>>24==0|(a[m>>0]|0)==0?(A<<24>>24?22:21):23,1.0)|0;Bj(t,r,1);r=t;A=c[r+4>>2]|0;z=n;c[z>>2]=c[r>>2];c[z+4>>2]=A;t=t+8|0;z=c[t+4>>2]|0;A=o;c[A>>2]=c[t>>2];c[A+4>>2]=z;y=+sf(+g[s>>2],+g[s+4>>2]);y=+gi(y,0.0,+g[q+5412>>2]);c[u>>2]=c[n>>2];c[u+4>>2]=c[n+4>>2];c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];uj(u,v,m,1,y);m=p+616|0;if(+g[i+12>>2]>0.0){k=c[m>>2]|0;h=w+8|0;Hw(k,w,h,Mf(i)|0,0.0,15);k=w}else{k=w;h=w+8|0}A=c[m>>2]|0;Xw(A,b,k,h,e,f,Mf(j)|0)}else d=0}else d=0;l=x;return d|0}function Yn(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Zn(){Bo((wg()|0)+472|0);return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7815,34785);g=c[d+6436>>2]|0;c[f>>2]=c[979];a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function $n(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[11106]|0;g=f+10628|0;do if(!(a[g>>0]|0)){h=c[f+6436>>2]|0;if(!d){d=c[f+24>>2]|0;if(!d)break}e=f+10632|0;if(c[e>>2]|0)Bb(8478,5025,7838,34794);d=Sf(d,8494)|0;c[e>>2]=d;if(!d)Bb(8497,5025,7842,34794);a[g>>0]=1;c[f+10640>>2]=c[h+272>>2];if((b|0)>-1)c[f+10644>>2]=b}while(0);return}function ao(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[11106]|0;e=d+10628|0;if(!(a[e>>0]|0)){f=d+10632|0;if(c[f>>2]|0)Bb(8478,5025,7859,34804);g=c[d+6436>>2]|0;c[f>>2]=0;a[e>>0]=1;c[d+10640>>2]=c[g+272>>2];if((b|0)>-1)c[d+10644>>2]=b}return}function bo(a){a=a|0;return (c[a>>2]|0)+-1|0}function co(a){a=a|0;return Rt(a)|0}function eo(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;Mi(b);a[d>>0]=0;ht(b,d);l=c;return}function fo(){var a=0,b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;a=c[11106]|0;go(34829);Ze(d,0.0,0.0);g=Rn(8515,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);b=Rn(8526,d)|0;ah(0.0,-1.0);Ze(d,0.0,0.0);d=Rn(8538,d)|0;ah(0.0,-1.0);eg(80.0);nm(0);e=a+10644|0;ho(8555,e,0,9,0)|0;om();gg();Zn();if(g)_n(c[e>>2]|0);if(b)$n(c[e>>2]|0,c[a+24>>2]|0);if(d)ao(c[e>>2]|0);l=f;return}function go(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Eg(e,a,0)|0;Dg(e+472|0,d);l=b;return}function ho(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0;h=l;l=l+16|0;i=h;g[i>>2]=+(c[b>>2]|0);f=So(a,i,+(d|0),+(e|0),f|0?f:8632,1.0)|0;c[b>>2]=~~+g[i>>2];l=h;return f|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&256)){h=c[11106]|0;i=c[h+6436>>2]|0;f=c[i+360>>2]|0;g=h+6660|0;e=c[g>>2]|0;if(!e)e=(Vf(f,b,d>>>5&1)|0)!=0;else{do if(!(e&1)){e=Vf(f,b,-1)|0;if((e|0)==-1){e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0;break}else{e=(e|0)!=0;break}}else{e=a[h+6656>>0]|0;bg(f,b,e&255);e=e<<24>>24!=0}while(0);c[g>>2]=0}if((d&16|0)==0&(a[h+10628>>0]|0)!=0)return e|(c[i+272>>2]|0)<(c[h+10644>>2]|0)|0}else e=1;return e|0}function jo(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.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.0,Q=0.0;O=l;l=l+160|0;M=O+136|0;N=O+128|0;J=O+64|0;K=O+112|0;L=O+40|0;i=O+120|0;j=O+88|0;D=O+145|0;t=O+144|0;E=O;F=O+56|0;G=O+32|0;H=O+104|0;w=O+24|0;x=O+16|0;y=O+80|0;z=O+72|0;A=O+8|0;r=Zi()|0;if(!(a[r+149>>0]|0)){I=c[11106]|0;B=(e&2|0)!=0;if((e&1024|0)==0&(B^1))Ze(J,+g[I+5404>>2],0.0);else{p=I+5404|0;u=c[p+4>>2]|0;v=J;c[v>>2]=c[p>>2];c[v+4>>2]=u}if(!h)v=nj(f,0)|0;else v=h;tj(K,f,v,0,-1.0);m=+g[J+4>>2];C=+pg(m,+g[r+256>>2]);u=I+6228|0;s=+sf(+g[r+252>>2],+g[u>>2]+ +g[I+5408>>2]*2.0);m=+pg(s,m*2.0+ +g[K+4>>2]);s=+g[r+20>>2];qh(i);Ze(M,s+ +g[i>>2],m+ +g[r+224>>2]);Yg(L,r+220|0,M);if(B){s=+(~~(+g[r+84>>2]*.5)|0)+-1.0;g[L>>2]=+g[L>>2]-s;p=L+8|0;g[p>>2]=+g[p>>2]+s}Q=+g[u>>2];k=+g[J>>2];s=Q+(B?3.0:2.0)*k;P=+g[K>>2];k=Q+(P>0.0?P+k*2.0:0.0);Ze(M,k,m);$g(M,C);if(B){c[j>>2]=c[L>>2];c[j+4>>2]=c[L+4>>2];c[j+8>>2]=c[L+8>>2];c[j+12>>2]=c[L+12>>2]}else{Q=+g[L>>2];rl(j,Q,+g[L+4>>2],k+Q+ +g[I+5420>>2]*2.0,+g[L+12>>2])}h=io(b,e)|0;if(h?(e&8200|0)==8192&(a[I+6748>>0]|0)==0:0){p=r+276|0;c[p>>2]=c[p>>2]|1<>2]}p=dh(j,b,0)|0;o=r+284|0;c[o>>2]=c[o>>2]|2;o=r+304|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];if(!p){if((e&8|0)==0&h){ko(b);h=1}}else{o=(e&4|0)==0;p=(e&256|0)!=0;n=(e&64|0)!=0;i=Ml(j,b,D,t,((n?e>>>6&2|16:0)|e<<4&4160)^5120)|0;do if(!p){if(i){if(!(e&192))i=1;else i=(c[I+6672>>2]|0)==(b|0);if(e&128){Ze(M,s+ +g[j>>2],+g[j+12>>2]);if(gh(j,M,1)|0)j=(a[I+6751>>0]^1)&255;else j=0;i=(j&1|i&1|0)!=0}if(n)i=(d[I+973>>0]|i&1)&255;else i=i&1;i=(i&1)!=0&((a[I+7040>>0]|0)==0|h^1)}else i=0;n=I+6668|0;j=c[n>>2]|0;if((j|0)==(b|0))if((a[I+6777>>0]|0)!=0?!((c[I+6784>>2]|0)!=0|h^1):0){lo();i=1;j=c[n>>2]|0;n=33}else n=34;else n=33;if((n|0)==33)if((j|0)==(b|0))n=34;else{q=i;n=37}if((n|0)==34)if((a[I+6777>>0]|0)!=0?!(h|(c[I+6784>>2]|0)!=1):0)lo();else{q=i;n=37}if((n|0)==37?!q:0)break;h=h^1;bg(c[r+360>>2]|0,b,h&1)}while(0);if(!o)fk();j=a[D>>0]|0;j=Lf((a[t>>0]|0)==0|j<<24>>24==0?(j<<24>>24?25:24):26,1.0)|0;Ze(M,s,C);nf(E,L,M);do if(B){B=L;A=c[B+4>>2]|0;i=F;c[i>>2]=c[B>>2];c[i+4>>2]=A;i=L+8|0;A=i;B=c[A+4>>2]|0;D=G;c[D>>2]=c[A>>2];c[D+4>>2]=B;Q=+g[I+5412>>2];c[N>>2]=c[F>>2];c[N+4>>2]=c[F+4>>2];c[M>>2]=c[G>>2];c[M+4>>2]=c[G+4>>2];uj(N,M,j,1,Q);Bj(L,b,2);Ze(N,+g[J>>2],C);nf(H,L,N);c[M>>2]=c[H>>2];c[M+4>>2]=c[H+4>>2];wj(M,h?3:1,1.0);if(!(a[I+10628>>0]|0)){Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);break}else{qj(E,8561,8564);Ze(M,0.0,0.0);sj(E,i,f,v,K,M,0);qj(E,8566,8568);break}}else{if(!((e&1|0)==0&(a[D>>0]|0)==0)){K=L;H=c[K+4>>2]|0;G=w;c[G>>2]=c[K>>2];c[G+4>>2]=H;G=L+8|0;H=c[G+4>>2]|0;K=x;c[K>>2]=c[G>>2];c[K+4>>2]=H;c[N>>2]=c[w>>2];c[N+4>>2]=c[w+4>>2];c[M>>2]=c[x>>2];c[M+4>>2]=c[x+4>>2];uj(N,M,j,0,0.0);Bj(L,b,2)}if(!(e&512)){if(!p){Ze(N,+g[J>>2],C+ +g[u>>2]*.15000000596046448);nf(z,L,N);c[M>>2]=c[z>>2];c[M+4>>2]=c[z+4>>2];wj(M,h?3:1,.699999988079071)}}else{Ze(N,s*.5,C+ +g[u>>2]*.5);nf(y,L,N);c[M>>2]=c[y>>2];c[M+4>>2]=c[y+4>>2];xj(M)}if(a[I+10628>>0]|0)qj(E,8568,0);K=E;L=c[K+4>>2]|0;N=A;c[N>>2]=c[K>>2];c[N+4>>2]=L;c[M>>2]=c[A>>2];c[M+4>>2]=c[A+4>>2];pj(M,f,v,0)}while(0);if((e&8|0)==0&h)ko(b)}}else h=0;l=O;return h|0}function ko(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=Zi()|0;nq(0.0);e=a+272|0;c[e>>2]=(c[e>>2]|0)+1;Dg(a+472|0,d);l=b;return}function lo(){a[(c[11106]|0)+6777>>0]=0;Lh();return}function mo(b,c){b=b|0;c=c|0;var d=0;d=Zi()|0;if(!(a[d+149>>0]|0))b=jo(Eg(d,b,0)|0,c|26,b,0)|0;else b=0;return b|0}function no(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;h=m+8|0;i=m;j=Zi()|0;do if(!(a[j+149>>0]|0)){k=(d|0)!=0;if(k?(a[d>>0]|0)==0:0){b=0;break}f=Eg(j,b,0)|0;b=jo(f,(k?4:0)|e|26,b,0)|0;if(k){e=c[11106]|0;n=+g[e+6228>>2]*.5;oo(h);k=Tg(j,f+1|0)|0;o=+sf(+g[j+296>>2],+g[j+492>>2]);Ze(i,o-+g[e+5404>>2]-n,n+(+g[j+292>>2]+ +g[e+5408>>2]));if(Nl(k,i,n)|0)a[d>>0]=0;po(h)}}else b=0;while(0);l=m;return b|0}function oo(a){a=a|0;yg(a+8|0);yg(a+24|0);St(a);return}function po(a){a=a|0;var b=0,d=0,e=0;d=c[(c[11106]|0)+6436>>2]|0;c[d+280>>2]=c[a>>2];c[d+284>>2]=c[a+4>>2];e=a+8|0;b=d+288|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];b=a+24|0;a=d+304|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];return}function qo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Eg(g,b,0)|0,d,h,f)|0}else b=0;return b|0}function ro(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=Zi()|0;if(!(a[g+149>>0]|0)){i=c[11106]|0;h=i+11148|0;f=(zf(h,3073,e,f)|0)+(i+11148)|0;b=jo(Tg(g,b)|0,d,h,f)|0}else b=0;return b|0}function so(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=qo(a,b,d,g)|0;l=f;return e|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ro(a,b,d,g)|0;l=f;return e|0}function uo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=qo(a,0,b,f)|0;l=e;return d|0}function vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=ro(a,0,b,f)|0;l=e;return d|0}function wo(b){b=b|0;var c=0;c=Zi()|0;if(!(a[c+149>>0]|0))b=jo(Eg(c,b,0)|0,0,b,0)|0;else b=0;return b|0}function xo(){var a=0,b=0.0;a=c[11106]|0;b=+yo();a=(c[a+6436>>2]|0)+220|0;g[a>>2]=b+ +g[a>>2];return}function yo(){var a=0;a=c[11106]|0;return +(+g[a+6228>>2]+ +g[a+5404>>2]*2.0)}function zo(b,d){b=b|0;d=d|0;var e=0;e=c[11106]|0;if(!(a[(c[e+6436>>2]|0)+149>>0]|0)){a[e+6656>>0]=b&1;c[e+6660>>2]=d|0?d:1}return}function Ao(a){a=a|0;var b=0,d=0,e=0;b=l;l=l+16|0;d=b;e=wg()|0;c[d>>2]=Tg(e,a)|0;Dg(e+472|0,d);l=b;return}function Bo(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0){c[a>>2]=b+-1;return}else Bb(39063,39072,1150,14479)}function Co(a){a=a|0;return Eg(c[(c[11106]|0)+6436>>2]|0,a,0)|0}function Do(a){a=a|0;return Tg(c[(c[11106]|0)+6436>>2]|0,a)|0}function Eo(){var b=0,d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0.0,o=0;m=l;l=l+48|0;b=m+32|0;d=m+16|0;e=m;j=m+8|0;k=Zi()|0;if(!(a[k+149>>0]|0)){o=c[11106]|0;f=o+6228|0;n=+g[f>>2];h=o+5404|0;i=+pg(+sf(+g[k+252>>2],n+ +g[o+5408>>2]*2.0),n);k=k+220|0;Ze(e,n,i);nf(b,k,e);Yg(d,k,b);bh(d,0.0);if(dh(d,0,0)|0){Ze(e,+g[h>>2]+ +g[f>>2]*.5,i*.5);nf(j,d,e);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];xj(b);ah(0.0,+g[h>>2]*2.0)}else ah(0.0,+g[h>>2]*2.0)}l=m;return}function Fo(b,d){b=b|0;d=d|0;var e=0.0,f=0,h=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+64|0;n=u+48|0;p=u+40|0;q=u+24|0;r=u;s=u+16|0;t=u+8|0;f=Zi()|0;if(!(a[f+149>>0]|0)){v=c[11106]|0;o=v+11148|0;d=(zf(o,3073,b,d)|0)+(v+11148)|0;tj(p,o,d,0,-1.0);h=+pg(0.0,+g[f+256>>2]);i=v+6228|0;j=+g[i>>2];k=v+5404|0;m=+pg(+sf(+g[f+252>>2],j+ +g[v+5408>>2]*2.0),j);b=f+220|0;e=+g[p>>2];if(e>0.0)e=e+ +g[k>>2]*2.0;else e=0.0;Ze(r,j+e,+pg(m,+g[p+4>>2]));nf(n,b,r);Yg(q,b,n);bh(q,0.0);if(dh(q,0,0)|0){Ze(r,+g[k>>2]+ +g[i>>2]*.5,m*.5);nf(s,q,r);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];xj(n);Ze(r,+g[i>>2]+ +g[k>>2]*2.0,h);nf(t,q,r);c[n>>2]=c[t>>2];c[n+4>>2]=c[t+4>>2];pj(n,o,d,0)}}l=u;return}function Go(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;Fo(a,e);l=d;return}function Ho(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+48|0;i=k+8|0;m=k;j=c[11106]|0;n=Zi()|0;h=j+10512|0;Wg(c[h>>2]|0,n);c[j+6480>>2]=12;_g(0);oh(n);Io(d,e,g,i);ch(m,a);a=Jo(b,i,32,m,17,0,0)|0;do if(!(c[h>>2]|0))if((c[j+6464>>2]|0)==(f|0)){c[h>>2]=f;_g(f);break}else Bb(8570,5025,8476,8587);while(0);if(a)a=Ko(i,Lo((c[11106]|0)+7160|0)|0,d,e,0)|0;else a=0;l=k;return a|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+24|0;k=n+16|0;j=n+8|0;i=n;a:do switch(a|0){case 0:{a=c[b>>2]|0;if((d|0)<0){c[i>>2]=a;yf(e,32,9388,i)|0;break a}else{c[j>>2]=d;c[j+4>>2]=a;yf(e,32,13420,j)|0;break a}}case 1:{f=+g[b>>2];if((d|0)<0){h[k>>3]=f;yf(e,32,9373,k)|0;break a}else{c[m>>2]=d;h[m+8>>3]=f;yf(e,32,13425,m)|0;break a}}default:{}}while(0);l=n;return}function Jo(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0.0,o=0,p=0.0,q=0.0,r=0.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,H=0,I=0.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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;qa=l;l=l+288|0;ga=qa+240|0;pa=qa+224|0;oa=qa+216|0;P=qa+208|0;m=qa+80|0;Q=qa+64|0;o=qa+192|0;M=qa+56|0;N=qa+48|0;ha=qa+40|0;ia=qa+32|0;ja=qa+24|0;T=qa+184|0;U=qa+176|0;aa=qa+16|0;ba=qa+160|0;ca=qa+144|0;da=qa;W=qa+128|0;X=qa+112|0;Y=qa+104|0;Z=qa+96|0;_=qa+88|0;ka=qa+168|0;x=Zi()|0;if(!(a[x+149>>0]|0)){E=(i&128|0)!=0;S=i&1048576;if(!((S|0)==0|E^1))Bb(8817,5025,9800,8909);F=(i&64|0)!=0;B=(i&1024|0)==0;if(!(B|F^1))Bb(8921,5025,9801,8909);la=c[11106]|0;ma=(S|0)!=0;ea=(i&16384|0)==0;na=(i&32768|0)!=0;C=(i&65536|0)!=0;if(ma)Xo();R=Eg(x,d,0)|0;tj(oa,d,0,1,-1.0);V=h;$=c[V+4>>2]|0;fa=m;c[fa>>2]=c[V>>2];c[fa+4>>2]=$;n=+Zl();if(ma)p=+bn()*8.0;else p=+g[oa+4>>2];O=la+5404|0;fa=la+5408|0;I=p+ +g[fa>>2]*2.0;c[ga>>2]=c[m>>2];c[ga+4>>2]=c[m+4>>2];ph(P,ga,n,I);$=x+220|0;nf(ga,$,P);Yg(Q,$,ga);$=Q+8|0;n=+g[oa>>2];if(n>0.0)n=n+ +g[la+5428>>2];else n=0.0;Ze(pa,n,0.0);nf(ga,$,pa);Yg(o,Q,ga);do if(ma){dh(o,R,Q)|0;ch(ga,Q);if(Rk(R,ga,0)|0){V=Zi()|0;g[P>>2]=+g[P>>2]-+g[V+136>>2];D=18;break}else{Vk();Yo();h=0;break}}else{bh(o,+g[fa>>2]);if(dh(o,R,Q)|0){V=x;D=18}else h=0}while(0);if((D|0)==18){y=kh(Q,R)|0;if(y)c[la+7036>>2]=1;do if(na){K=la+6224|0;L=Uw(c[K>>2]|0,42)|0;h=la+10428|0;K=c[K>>2]|0;c[h>>2]=c[K>>2];c[la+10432>>2]=c[K+4>>2];G=K+8|0;H=c[G+4>>2]|0;J=la+10436|0;c[J>>2]=c[G>>2];c[J+4>>2]=H;c[la+10500>>2]=c[K+72>>2];c[la+10504>>2]=c[K+76>>2];c[la+10496>>2]=c[K+68>>2];c[la+10480>>2]=L;c[la+10484>>2]=c[L+4>>2];if((Hp(la+10444|0)|0?am(la+10456|0)|0:0)?Ip(la+10468|0)|0:0){cm(h);break}Bb(9020,5025,9856,8909)}while(0);K=la+7144|0;m=mh(x,R,(i&1088|0)==0)|0;if(m)t=(c[x+684>>2]|0)==(c[x+692>>2]|0);else t=0;u=m&(t^1);if(y)w=(a[la+968>>0]|0)!=0;else w=0;L=la+6464|0;if((ma?(c[L>>2]|0)==0:0)?(c[K>>2]|0)==(R|0):0){s=c[la+6468>>2]|0;s=(s|0)==(Ug(V,7650,0)|0)}else s=0;o=(c[L>>2]|0)==(R|0);do if(o)v=0;else{if((i&16|0)==0?(c[la+6684>>2]|0)!=(R|0):0){v=0;break}v=ma^1}while(0);h=v&1;if(!(m|w|s)?(c[la+6684>>2]|0)!=(R|0):0){w=(a[la+968>>0]|0)!=0;h=v}else{if(!o){m=la+7188|0;o=c[m>>2]|0;J=la+7148|0;G=f+1|0;Jp(J,G);H=la+7160|0;jg(H,G);tf(c[la+7168>>2]|0,e,c[H>>2]|0);c[ga>>2]=0;c[m>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Ep(K);do if((c[K>>2]|0)==(R|0)){if((o|0)!=(c[m>>2]|0)){D=44;break}Kp(K)}else D=44;while(0);if((D|0)==44){c[K>>2]=R;g[la+7196>>2]=0.0;Lp(la+7200|0,(ma^1)&1);h=ma?h:(t|v)&1}if(i&8192|0)a[la+7212>>0]=1;do if(!ma){if(!u){if(!w)break;if(!(a[la+233>>0]|0))break}h=1}while(0)}Wg(R,x);Xg(R,x);dj(x);h=(h&1)!=0;if(!(i&1048704)){w=la+6480|0;c[w>>2]=c[w>>2]|12;w=0}else w=0}do if((c[L>>2]|0)==(R|0)){do if(!ea){if(a[la+6477>>0]|0)break;J=la+7148|0;Jp(J,f+1|0);c[ga>>2]=0;c[la+7188>>2]=jf(c[la+7156>>2]|0,c[J>>2]|0,e,0,ga)|0;c[la+7184>>2]=(c[ga>>2]|0)-e;Kp(K)}while(0);c[la+7192>>2]=f;s=la+216|0;m=a[s>>0]|0;a[la+6478>>0]=m^1;c[la+11144>>2]=1;n=+g[la+208>>2]-+g[Q>>2]-+g[O>>2]+ +g[la+7196>>2];if(ma)p=+g[la+212>>2]-+g[V+224>>2]-+g[fa>>2];else p=+g[la+6228>>2]*.5;o=(a[la+180>>0]|0)!=0;a:do if(h)D=66;else{h=y^1;if(!(o|h)?a[la+973>>0]|0:0){D=66;break}do if(!(h|o^1)){if(!(a[la+973>>0]|0))break;Cp(K,65548);Cp(K,196621);break a}while(0);do if(a[la+968>>0]|0){if(a[la+10425>>0]|0)break;if(!y)break a;Np(K,la+7200|0,n,p);Ep(K);break a}while(0);if(!(m<<24>>24))break;if(a[la+10425>>0]|0)break;if(!(+g[la+892>>2]!=0.0)?!(+g[la+896>>2]!=0.0):0)break;Op(K,la+7200|0,n,p);Ep(K);a[la+10424>>0]=1}while(0);if((D|0)==66){Mp(K);a[la+10425>>0]=1}h=la+10425|0;do if(a[h>>0]|0){if(a[s>>0]|0)break;a[h>>0]=0}while(0);m=la+750|0;if(!(b[m>>1]|0))break;if(!(a[la+233>>0]|0)){if(ea)D=86}else if(!((a[la+235>>0]|0)==0|ea^1))D=86;b:do if((D|0)==86){h=0;while(1){o=b[la+750+(h<<1)>>1]|0;if(!(o<<16>>16))break b;c[ga>>2]=o&65535;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);if((h|0)<16)h=h+1|0;else break}}while(0);t=m;u=t+34|0;do{b[t>>1]=0;t=t+2|0}while((t|0)<(u|0))}while(0);c:do if((c[L>>2]|0)==(R|0)?!(w|(a[la+6477>>0]|0)!=0):0){y=la+234|0;v=a[y>>0]|0;z=v<<24>>24?131072:0;A=la+180|0;h=a[A>>0]|0;do if(!(h<<24>>24)){if(a[la+233>>0]|0?(a[la+236>>0]|0)==0:0){D=99;break}s=la+233|0;h=s;s=(a[s>>0]|0)!=0;o=la+235|0;m=0;D=105}else{if(a[la+236>>0]|0?(a[la+233>>0]|0)==0:0){D=99;break}s=la+235|0;h=la+233|0;o=s;s=(a[s>>0]|0)!=0;m=0;D=102}while(0);if((D|0)==99){m=(a[la+235>>0]|v)<<24>>24==0;J=h<<24>>24!=0;h=la+233|0;o=la+235|0;s=(a[(J?o:h)>>0]|0)!=0;if(J)D=102;else D=105}do if((D|0)==102){if(!(a[la+236>>0]|0)){D=105;break}if(a[h>>0]|0){D=106;break}t=(a[o>>0]|0)==0;u=m;D=109}while(0);if((D|0)==105)if(!(a[h>>0]|0)){t=0;u=m;D=109}else D=106;do if((D|0)==106){if(v<<24>>24){t=0;D=112;break}if(a[o>>0]|0){t=0;D=112;break}t=(a[la+236>>0]|0)==0;if(m){m=0;v=0;D=113;break}if(t){v=0;u=0;t=0;m=0;D=123}else{t=0;x=0;w=0;u=0;v=0}}else if((D|0)==109){if(!(v<<24>>24)){m=u;D=112;break}if(a[o>>0]|0){m=u;D=112;break}m=(a[la+236>>0]|0)==0;if(u){v=t;t=0;D=113}else{x=t;t=0;w=0;D=115}}while(0);if((D|0)==112)if(m){m=0;v=t;t=0;D=113}else{x=0;w=0;u=0;v=0}do if((D|0)==113){if(!(nh(18,1)|0)){x=v;w=1;D=115;break}u=na|ea^1;if(u|ma^1){x=v;v=u^1;D=121;break}x=v;v=Qp(K)|0;D=121}while(0);d:do if((D|0)==115){do if(m){u=na|ea&(nh(10,1)|0)^1;if(u|ma^1){m=1;v=u^1;break}v=Qp(K)|0;if(w){m=1;D=121;break d}else{m=1;u=0;D=122;break d}}else{m=0;v=0}while(0);if(w)D=121;else{u=0;D=122}}while(0);do if((D|0)==121){if(!(nh(16,1)|0)){u=1;D=122;break}if(na|ma^1){t=x;w=na^1;D=128;break}t=x;w=Qp(K)|0;D=128}while(0);if((D|0)==122)if(t){t=x;D=123}else{t=x;w=0;D=127}do if((D|0)==123){w=na|(nh(9,1)|0)^1;if(w|ma^1){w=w^1;D=127;break}w=Qp(K)|0;if(u)D=128;else{u=0;D=129}}while(0);if((D|0)==127)if(u)D=128;else{u=0;D=129}if((D|0)==128)if(nh(17,1)|0){u=1;m=v;D=131}else{u=1;D=129}do if((D|0)==129){if(!m){x=v;v=0;break}if(nh(9,1)|0){m=v;D=131}else{x=v;v=0}}while(0);if((D|0)==131){x=m;v=ea}if(nh(1,1)|0){Cp(K,(t?65540:s?65548:65536)|z);m=1;J=0;H=0;break}if(nh(2,1)|0){Cp(K,(t?65541:s?65549:65537)|z);m=1;J=0;H=0;break}m=ma^1;if(!(m|(nh(3,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65542:65538)|z);m=1;J=0;H=0;break}else{li(V,+pg(+g[V+112>>2]-+g[la+6228>>2],0.0));m=1;J=0;H=0;break}if(!(m|(nh(4,1)|0)^1))if(!(a[h>>0]|0)){Cp(K,(t?65543:65539)|z);m=1;J=0;H=0;break}else{I=+g[V+112>>2]+ +g[la+6228>>2];li(V,+sf(I,+Hl()));m=1;J=0;H=0;break}if(nh(7,1)|0){Cp(K,(a[h>>0]|0?65542:65540)|z);m=1;J=0;H=0;break}if(nh(8,1)|0){Cp(K,(a[h>>0]|0?65543:65541)|z);m=1;J=0;H=0;break}m=ea^1;if(!(m|(nh(10,1)|0)^1)){Cp(K,z|65544);m=1;J=0;H=0;break}if(!(m|(nh(11,1)|0)^1)){do if(!(Qp(K)|0)){if(s){Cp(K,196620);break}if(!(a[A>>0]|0))break;if(!(a[la+236>>0]|0))break;if(a[o>>0]|0)break;if(a[h>>0]|0)break;Cp(K,196612)}while(0);Cp(K,z|65545);m=1;J=0;H=0;break}if(nh(13,1)|0){if(!ma){m=1;J=1;H=1;break}h=(a[h>>0]|0)==0;if(!(i&2048)){h=h^1;if(m|h){m=1;J=h;H=h;break}}else if(h|m){m=1;J=h;H=h;break}c[ga>>2]=10;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break}do if(!B){if(!(nh(0,1)|0))break;if(a[h>>0]|0)break;if(a[y>>0]|0)break;if((a[o>>0]|0)!=0|m)break;c[ga>>2]=9;if(Pp(ga,i,j,k)|0)Cp(K,c[ga>>2]|0);m=1;J=0;H=0;break c}while(0);if(nh(14,1)|0){m=0;J=0;H=1;break}do if(u){if(!(C|(m|(nh(20,1)|0)^1))){Cp(K,65546);Rp(K);m=1;J=0;H=0;break c}if(!(C|(m|(nh(19,1)|0)^1))){Cp(K,65547);Rp(K);m=1;J=0;H=0;break c}if(!(nh(15,1)|0))break;Mp(K);a[la+10424>>0]=1;m=1;J=0;H=0;break c}while(0);if(w|x){if(c[la+192>>2]|0){if(Qp(K)|0)h=rp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else h=0;if(Qp(K)|0)m=sp(c[la+7204>>2]|0,c[la+7208>>2]|0)|0;else m=c[la+7188>>2]|0;G=la+7172|0;jg(G,m-h<<2|1);J=la+7180|0;H=c[la+7156>>2]|0;Df(c[J>>2]|0,c[G>>2]|0,H+(h<<1)|0,H+(m<<1)|0)|0;th(c[J>>2]|0)}if(!x){m=1;J=0;H=0;break}if(!(Qp(K)|0))Mp(K);a[la+10424>>0]=1;Sp(K,la+7200|0);m=1;J=0;H=0;break}if(!v){m=1;J=0;H=0;break}m=sh()|0;if(!m){m=1;J=0;H=0;break}s=vf(((v9(m)|0)<<1)+2|0)|0;do if(!(a[m>>0]|0))b[s>>1]=0;else{h=0;do{m=m+(Bf(ga,m,0)|0)|0;o=c[ga>>2]|0;if(!o){D=206;break}do if(o>>>0<=65535){if(!(Pp(ga,i,j,k)|0))break;b[s+(h<<1)>>1]=c[ga>>2];h=h+1|0}while(0)}while((a[m>>0]|0)!=0);b[s+(h<<1)>>1]=0;if((h|0)<=0)break;Tp(K,la+7200|0,s,h);a[la+10424>>0]=1}while(0);Uf(s);m=1;J=0;H=0}else{m=1;J=0;H=w}while(0);if((c[L>>2]|0)==(R|0)){s=ea^1;if(m|s)h=0;else{tf(e,c[la+7168>>2]|0,f);h=1}if(m|J^1){if(m)D=216}else if(i&32)D=216;do if((D|0)==216){if(ea){G=la+7172|0;jg(G,c[la+7148>>2]<<2);Df(c[la+7180>>2]|0,c[G>>2]|0,c[la+7156>>2]|0,0)|0}e:do if(i&448|0){if(!j)Bb(9128,5025,10134,8909);if(F?nh(0,1)|0:0){m=64;o=0}else D=223;do if((D|0)==223){if(E){if(nh(3,1)|0){m=128;o=3;break}if(nh(4,1)|0){m=128;o=4;break}}if(!(i&256))break e;else{m=256;o=21}}while(0);t=ga;u=t+48|0;do{c[t>>2]=0;t=t+4|0}while((t|0)<(u|0));c[ga>>2]=m;A=ga+4|0;c[A>>2]=i;c[ga+8>>2]=k;a[ga+12>>0]=s&1;c[ga+16>>2]=o;ra=la+7180|0;B=ga+20|0;c[B>>2]=c[ra>>2];F=la+7184|0;k=ga+24|0;c[k>>2]=c[F>>2];m=la+7192|0;o=ga+28|0;c[o>>2]=c[m>>2];C=ga+32|0;a[C>>0]=0;G=la+7156|0;E=c[G>>2]|0;u=la+7200|0;v=Ff(E,E+(c[u>>2]<<1)|0)|0;s=ga+36|0;c[s>>2]=v;x=la+7204|0;y=Ff(E,E+(c[x>>2]<<1)|0)|0;w=ga+40|0;c[w>>2]=y;D=la+7208|0;E=Ff(E,E+(c[D>>2]<<1)|0)|0;z=ga+44|0;c[z>>2]=E;Bd[j&63](ga)|0;t=c[B>>2]|0;if((t|0)!=(c[ra>>2]|0))Bb(9143,5025,10182,8909);if((c[o>>2]|0)!=(c[m>>2]|0))Bb(9195,5025,10183,8909);if((c[A>>2]|0)!=(i|0))Bb(9240,5025,10184,8909);m=c[s>>2]|0;if((m|0)!=(v|0))c[u>>2]=Cf(t,t+m|0)|0;m=c[w>>2]|0;if((m|0)!=(y|0)){ra=c[B>>2]|0;c[x>>2]=Cf(ra,ra+m|0)|0}m=c[z>>2]|0;if((m|0)!=(E|0)){ra=c[B>>2]|0;c[D>>2]=Cf(ra,ra+m|0)|0}do if(a[C>>0]|0){ra=c[k>>2]|0;m=c[B>>2]|0;if((ra|0)==(v9(m)|0)){c[la+7188>>2]=jf(c[G>>2]|0,c[la+7148>>2]|0,m,0,0)|0;c[F>>2]=c[k>>2];Ep(K);break}else Bb(9269,5025,10190,8909)}while(0)}while(0);if(!ea)break;m=c[la+7180>>2]|0;if(!(jaa(m,e)|0))break;tf(e,m,f);h=1}while(0);E=(h&1)!=0}else E=0;do if(H){if((c[L>>2]|0)!=(R|0))break;Zg()}while(0);if((c[L>>2]|0)!=(R|0)|ea^1)D=e;else D=c[la+7180>>2]|0;Bj(Q,R,1);if(!ma){ra=Q;e=c[ra+4>>2]|0;f=M;c[f>>2]=c[ra>>2];c[f+4>>2]=e;f=$;e=c[f+4>>2]|0;ra=N;c[ra>>2]=c[f>>2];c[ra+4>>2]=e;ra=Lf(7,1.0)|0;I=+g[la+5412>>2];c[pa>>2]=c[M>>2];c[pa+4>>2]=c[M+4>>2];c[ga>>2]=c[N>>2];c[ga+4>>2]=c[N+4>>2];uj(pa,ga,ra,1,I)}p=+g[Q>>2];C=Q+4|0;q=+g[C>>2];r=+g[P>>2];I=+g[P+4>>2];If(pa,p,q,p+r,q+I);if(ma){P=V+220|0;Q=c[P+4>>2]|0;ra=ha;c[ra>>2]=c[P>>2];c[ra+4>>2]=Q}else nf(ha,Q,O);Ze(ia,0.0,0.0);if((c[K>>2]|0)!=(R|0)|ma^1)h=0;else{h=c[L>>2]|0;h=(h|0)==(Ug(V,7650,0)|0)}if(h|(c[L>>2]|0)==(R|0)){B=la+10420|0;g[B>>2]=+g[la+12>>2]+ +g[B>>2];z=c[la+7156>>2]|0;Xe(ga);Xe(ja);v=z+(c[la+7200>>2]<<1)|0;x=la+7204|0;h=c[x>>2]|0;y=la+7208|0;m=c[y>>2]|0;if((h|0)==(m|0)){o=1;w=0;h=-999}else{o=2;w=z+((rp(h,m)|0)<<1)|0;h=-1}u=z;m=0;o=o+(S>>>20)|0;s=-1;f:while(1){g:do switch(b[u>>1]|0){case 0:break f;case 10:{t=m+1|0;if(!((s|0)!=-1|u>>>0>>0))if((o|0)<2){m=t;s=t;break f}else{o=o+-1|0;s=t}if((h|0)!=-1|u>>>0>>0){m=t;break g}if((o|0)<2){m=t;h=t;break f}else{m=t;o=o+-1|0;h=t}break}default:{}}while(0);u=u+2|0}m=m+1|0;h=(h|0)==-1?m:h;Up(T,xf(v,z)|0,v,0,0);c[ga>>2]=c[T>>2];A=la+6228|0;n=+g[A>>2];o=ga+4|0;g[o>>2]=n*+(((s|0)==-1?m:s)|0);if((h|0)>-1){Up(U,xf(w,z)|0,w,0,0);c[ja>>2]=c[U>>2];n=+g[A>>2];g[ja+4>>2]=n*+(h|0)}if(ma){Ze(aa,r,n*+(m|0));T=aa;U=c[T+4>>2]|0;ra=ia;c[ra>>2]=c[T>>2];c[ra+4>>2]=U}m=la+10424|0;do if(!(a[m>>0]|0))n=+g[la+7196>>2];else{do if(!(i&4096)){q=r*.25;p=+g[ga>>2];h=la+7196|0;n=+g[h>>2];if(p=n))break;n=q+p}n=+(~~n|0);g[h>>2]=n}else{g[la+7196>>2]=0.0;n=0.0}while(0);if(!ma)break;h=V+112|0;r=+g[h>>2];p=+g[o>>2];q=p-+g[A>>2];do if(q=r)){p=r;break}}while(0);ra=V+224|0;I=+g[ra>>2]+(r-p);g[ra>>2]=I;g[h>>2]=p;g[ha+4>>2]=I}while(0);a[m>>0]=0;Ze(aa,n,0.0);m=c[x>>2]|0;h=c[y>>2]|0;if((m|0)!=(h|0)){U=rp(m,h)|0;o=z+(U<<1)|0;ra=sp(m,h)|0;s=z+(ra<<1)|0;q=ma?0.0:-1.0;r=ma?0.0:2.0;t=Lf(40,1.0)|0;nf(ca,ha,ja);lf(ba,ca,aa);c[ca>>2]=o;u=ba+4|0;h:do if((U|0)<(ra|0)){v=pa+12|0;w=pa+4|0;x=V+616|0;y=W+8|0;z=la+6224|0;p=+g[A>>2];n=+g[u>>2];h=o;do{if(n>+g[v>>2]+p)break h;i:do if(n<+g[w>>2])while(1){if(h>>>0>=s>>>0)break i;m=h+2|0;c[ca>>2]=m;if((b[h>>1]|0)==10){h=m;break}else h=m}else{Up(da,h,s,ca,1);if(+g[da>>2]<=0.0)g[da>>2]=+(~~(+Vp(c[z>>2]|0,32)*.5)|0);Ze(Y,0.0,q-+g[A>>2]);nf(X,ba,Y);Ze(_,+g[da>>2],r);nf(Z,ba,_);Yg(W,X,Z);$i(X,pa);Cj(W,X);$i(X,pa);if(lh(W,X)|0)Hw(c[x>>2]|0,W,y,t,0.0,15);n=+g[u>>2];p=+g[A>>2];h=c[ca>>2]|0}while(0);g[ba>>2]=+g[ha>>2]-+g[aa>>2];n=p+n;g[u>>2]=n}while(h>>>0>>0)}while(0)}o=V+616|0;Z=c[o>>2]|0;_=c[la+6224>>2]|0;I=+g[A>>2];lf(ba,ha,aa);ra=Lf(0,1.0)|0;Qw(Z,_,I,ba,ra,D,D+(c[la+7184>>2]|0)|0,0.0,ma?0:pa);do if(!(a[la+181>>0]|0))m=1;else{n=+g[B>>2];if(n<=0.0){m=1;break}m=+Baa(n,1.2000000476837158)<=.800000011920929}while(0);nf(ca,ha,ga);lf(ba,ca,aa);r=+g[ba>>2];h=ba+4|0;I=+g[h>>2];rl(ca,r,I-+g[A>>2]+.5,r+1.0,I+-1.5);do if(m){$i(da,pa);if(!(lh(ca,da)|0))break;ra=c[o>>2]|0;Bl(da,ca);Fw(ra,ca,da,Lf(0,1.0)|0,1.0)}while(0);if(ea){Ze(da,+g[ba>>2]+-1.0,+g[h>>2]-+g[A>>2]);ea=da;pa=c[ea+4>>2]|0;ra=la+10584|0;c[ra>>2]=c[ea>>2];c[ra+4>>2]=pa}}else{c[ga>>2]=0;if(ma){I=+(Wp(D,ga)|0);h=la+6228|0;Ze(ja,r,+g[h>>2]*I);ea=ja;ra=c[ea+4>>2]|0;m=ia;c[m>>2]=c[ea>>2];c[m+4>>2]=ra;m=c[ga>>2]|0}else{h=la+6228|0;m=0}da=c[V+616>>2]|0;ea=c[la+6224>>2]|0;I=+g[h>>2];ra=Lf(0,1.0)|0;Qw(da,ea,I,ha,ra,D,m,0.0,ma?0:pa)}if(ma){Ze(ja,0.0,+g[la+6228>>2]);nf(ga,ia,ja);Xp(ga);Vk();Yo()}do if(na)em();else{if(!(a[la+10628>>0]|0))break;qj(ha,D,0)}while(0);if(+g[oa>>2]>0.0){Ze(ka,+g[$>>2]+ +g[la+5428>>2],+g[C>>2]+ +g[fa>>2]);c[ga>>2]=c[ka>>2];c[ga+4>>2]=c[ka+4>>2];pj(ga,d,0,1)}h=(i&32|0)==0?E:J}}else h=0;l=qa;return h|0}function Ko(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.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;z=l;l=l+64|0;p=z+48|0;o=z+40|0;t=z+32|0;v=z+24|0;u=z+16|0;s=z+8|0;r=z;x=z+56|0;w=z+52|0;while(1){m=a[b>>0]|0;if(Yq(m<<24>>24)|0)b=b+1|0;else break}switch(m<<24>>24){case 47:case 42:case 43:{do{b=b+1|0;k=a[b>>0]|0}while(Yq(k<<24>>24)|0);q=m;n=b;b=k;break}default:{q=0;n=b;b=m}}a:do if(!(b<<24>>24))b=0;else switch(e|0){case 0:{b=(h|0)==0?9388:h;k=c[f>>2]|0;c[x>>2]=k;b:do if(q<<24>>24){c[r>>2]=x;if((Raa(d,b,r)|0)<1)b=0;else{g[w>>2]=0.0;switch(q<<24>>24){case 43:{c[s>>2]=w;if((Raa(n,9373,s)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]+ +(c[x>>2]|0));y=19;break b}case 42:{c[u>>2]=w;if((Raa(n,9373,u)|0)!=1){y=19;break b}c[f>>2]=~~(+g[w>>2]*+(c[x>>2]|0));y=19;break b}case 47:{c[v>>2]=w;y=(Raa(n,9373,v)|0)==1;i=+g[w>>2];if(!(y&i!=0.0)){y=19;break b}c[f>>2]=~~(+(c[x>>2]|0)/i);y=19;break b}default:{y=17;break b}}}}else{g[w>>2]=0.0;y=17}while(0);if((y|0)==17){c[t>>2]=x;if((Raa(n,b,t)|0)==1){c[f>>2]=c[x>>2];y=19}else y=19}if((y|0)==19)b=(k|0)!=(c[f>>2]|0);break a}case 1:{j=+g[f>>2];g[x>>2]=j;if(q<<24>>24!=0?(c[o>>2]=x,(Raa(d,9373,o)|0)<1):0)b=0;else{g[w>>2]=0.0;c[p>>2]=w;if((Raa(n,9373,p)|0)<1)b=0;else{c:do switch(q<<24>>24){case 43:{i=+g[x>>2]+ +g[w>>2];y=31;break}case 42:{i=+g[x>>2]*+g[w>>2];y=31;break}default:{i=+g[w>>2];if(q<<24>>24==47)if(i!=0.0){i=+g[x>>2]/i;y=31;break c}else{i=+g[f>>2];break c}else y=31}}while(0);if((y|0)==31)g[f>>2]=i;b=j!=i}}break a}default:{b=0;break a}}while(0);l=z;return b|0}function Lo(a){a=a|0;return c[a+8>>2]|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h;c[g>>2]=d;b=x9(b,37)|0;a:do if(b){f=b;while(1){b=f+1|0;e=a[b>>0]|0;if(e<<24>>24!=37)break;f=x9(f+2|0,37)|0;if(!f)break a}if((e+-48&255)<10)do{b=b+1|0;e=a[b>>0]|0}while((e+-48&255)<10);if(e<<24>>24==46){b=No(b+1|0,g)|0;e=c[g>>2]|0;if(e>>>0>10)c[g>>2]=d;else d=e}switch(a[b>>0]|0){case 69:case 101:break;default:break a}c[g>>2]=-1;d=-1}while(0);l=h;return d|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=(a[b>>0]|0)==45;b=g?b+1|0:b;b=(a[b>>0]|0)==43?b+1|0:b;f=a[b>>0]|0;if((f+-48&255)<10){e=0;do{b=b+1|0;e=(e*10|0)+-48+(f<<24>>24)|0;f=a[b>>0]|0}while((f+-48&255)<10)}else e=0;c[d>>2]=g?0-e|0:e;return b|0}function Oo(a,b){a=+a;b=b|0;var c=0.0,d=0.0,e=0.0;if((b|0)>=0){d=+Po(b);e=+B(+a);c=+Baa(e,d);c=e+((!(c<=d*.5)?d:-0.0)-c);a=a<0.0?-c:c}return +a}function Po(a){a=a|0;var b=0.0;if(a>>>0<10)b=+g[1472+(a<<2)>>2];else b=+D(10.0,+(+(0-a|0)));return +b}function Qo(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0,z=0,A=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+64|0;H=I+48|0;G=I+32|0;o=I+8|0;p=I;z=I+24|0;A=I+16|0;C=c[11106]|0;E=Zi()|0;F=C+6464|0;if((c[F>>2]|0)==(d|0))n=(c[C+6496>>2]|0)==2?9:7;else n=7;x=Lf(n,1.0)|0;Bj(b,d,1);J=b;K=c[J+4>>2]|0;y=o;c[y>>2]=c[J>>2];c[y+4>>2]=K;y=b+8|0;K=y;J=c[K+4>>2]|0;n=p;c[n>>2]=c[K>>2];c[n+4>>2]=J;w=+g[C+5412>>2];c[G>>2]=c[o>>2];c[G+4>>2]=c[o+4>>2];c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];uj(G,H,x,1,w);o=i<.9999899864196777|i>1.0000100135803223;x=(k&1|0)==0;if(x)m=+Ul(b);else m=+ki(b);q=m+-4.0;n=(j|0)==0;if(n)m=+pg(q/((f>2]);else m=+g[C+5460>>2];w=+sf(m,q);m=q-w;p=b+4|0;w=w*.5;u=w+((x?+g[b>>2]:+g[p>>2])+2.0);k=b+12|0;v=(x?+g[y>>2]:+g[k>>2])+-2.0-w;if(f*h<0.0){t=1.0/i;r=+D(+(+B(+(0.0-f))),+t);t=r/(r+ +D(+(+B(+h)),+t))}else t=f<0.0?1.0:0.0;a:do if((c[F>>2]|0)==(d|0)){b:do switch(c[C+6496>>2]|0){case 1:{if(!(a[C+216>>0]|0)){Zg();n=0;break a}if(m>0.0)m=+gi((+g[(x?C+208|0:C+212|0)>>2]-u)/m,0.0,1.0);else m=0.0;m=x?m:1.0-m;break}case 2:{Oh(H,3,5,0.0,0.0);q=x?+g[H>>2]:-+g[H+4>>2];if((c[C+6680>>2]|0)==(d|0)?(a[C+6477>>0]|0)==0:0)Zg();else s=22;if((s|0)==22?q!=0.0:0){r=+Ro(+g[e>>2],f,h,i,t);do if(o|n^1){m=q/100.0;K=Qh(14)|0;m=K?m/10.0:m}else{m=h-f;if(!(+B(+m)<=100.0)?!(Qh(14)|0):0){m=q/100.0;break}m=(q<0.0?-1.0:1.0)/m}while(0);K=Qh(15)|0;m=K?m*10.0:m;if(!(r>=1.0&m>0.0)?!(r<=0.0&m<0.0):0){m=+Kf(r+m);break b}}n=0;break a}default:{n=0;break a}}while(0);do if(o)if(m9.999999974752427e-07;m=+D(+(K?(m-t)/(1.0-t):m),+i);m=+Pl(+pg(f,0.0),h,m);break}else m=+Pl(f,h,m);while(0);m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;n=1}else n=0}else n=0;while(0);m=+Ro(+g[e>>2],f,h,i,t);m=+Pl(u,v,x?m:1.0-m);yg(H);if(x){Ze(z,m-w,+g[p>>2]+2.0);Ze(A,w+m,+g[k>>2]+-2.0);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}else{Ze(z,+g[b>>2]+2.0,m-w);Ze(A,+g[y>>2]+-2.0,w+m);Yg(G,z,A);c[H>>2]=c[G>>2];c[H+4>>2]=c[G+4>>2];c[H+8>>2]=c[G+8>>2];c[H+12>>2]=c[G+12>>2]}J=c[E+616>>2]|0;K=Lf((c[F>>2]|0)==(d|0)?20:19,1.0)|0;Hw(J,H,H+8|0,K,+g[C+5464>>2],15);l=I;return n|0}function Ro(a,b,c,d,e){a=+a;b=+b;c=+c;d=+d;e=+e;do if(!(b==c)){if(b1.0000100135803223)){a=(a-b)/(c-b);break}if(a<0.0){a=(1.0-+D(+(1.0-(a-b)/(+sf(0.0,c)-b)),+(1.0/d)))*e;break}else{b=+pg(0.0,b);a=(1.0-e)*+D(+((a-b)/(c-b)),+(1.0/d))+e;break}}else a=0.0;while(0);return +a}function So(b,d,e,f,i,j){b=b|0;d=d|0;e=+e;f=+f;i=i|0;j=+j;var k=0,m=0.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;A=l;l=l+128|0;s=A;x=A+120|0;y=A+104|0;q=A+88|0;z=A+24|0;k=A+8|0;t=A+16|0;o=Zi()|0;if(!(a[o+149>>0]|0)){u=c[11106]|0;p=Eg(o,b,0)|0;m=+Zl();tj(x,b,0,1,-1.0);w=o+220|0;v=u+5408|0;Ze(z,m,+g[x+4>>2]+ +g[v>>2]*2.0);nf(q,w,z);Yg(y,w,q);w=y+8|0;m=+g[x>>2];if(m>0.0)m=m+ +g[u+5428>>2];else m=0.0;Ze(k,m,0.0);nf(z,w,k);Yg(q,y,z);a:do if(dh(q,p,y)|0){n=kh(y,p)|0;i=(i|0)==0?8618:i;k=Mo(i,3)|0;do if(mh(o,p,1)|0){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;r=15}else{if(n?(a[u+968>>0]|0)!=0:0)r=12;else if((c[u+6672>>2]|0)!=(p|0)){if((c[u+6684>>2]|0)==(p|0)?(c[u+10512>>2]|0)!=(p|0):0)r=12}else r=12;if((r|0)==12){Wg(p,o);Xg(p,o);dj(o);c[u+6480>>2]=12;if(a[u+233>>0]|0){r=15;break}if((c[u+6684>>2]|0)==(p|0)){r=15;break}}if((c[u+6464>>2]|0)==(p|0)?(c[u+10512>>2]|0)==(p|0):0)break;bh(q,+g[v>>2]);k=Qo(y,p,d,e,f,j,k,0)|0;h[s>>3]=+g[d>>2];d=z+(yf(z,64,i,s)|0)|0;Ze(s,.5,.5);sj(y,w,z,d,0,s,0);if(+g[x>>2]>0.0){Ze(t,+g[w>>2]+ +g[u+5428>>2],+g[y+4>>2]+ +g[v>>2]);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];pj(s,b,0,1)}break a}while(0);if((r|0)==15)c[u+10512>>2]=0;k=Ho(y,b,1,d,p,k)|0}else{bh(q,+g[v>>2]);k=0}while(0)}else k=0;l=A;return k|0}function To(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;i=+i;j=j|0;k=+k;var m=0.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;A=l;l=l+128|0;t=A;y=A+120|0;z=A+104|0;n=A+88|0;u=A+16|0;v=A+8|0;w=A+80|0;p=Zi()|0;if(!(a[p+149>>0]|0)){x=c[11106]|0;q=Eg(p,b,0)|0;tj(y,b,0,1,-1.0);s=p+220|0;nf(n,s,d);Yg(z,s,n);s=z+8|0;m=+g[y>>2];if(m>0.0)m=m+ +g[x+5428>>2];else m=0.0;Ze(v,m,0.0);nf(u,s,v);Yg(n,z,u);o=x+5408|0;bh(n,+g[o>>2]);if(dh(z,q,0)|0){n=kh(z,q)|0;j=(j|0)==0?8618:j;d=Mo(j,3)|0;if(n?(a[x+968>>0]|0)!=0:0)r=9;else if(!((c[x+6672>>2]|0)!=(q|0)?(c[x+6684>>2]|0)!=(q|0):0))r=9;if((r|0)==9){Wg(q,p);Xg(q,p);dj(p);c[x+6480>>2]=3}d=Qo(z,q,e,f,i,k,d,1)|0;h[t>>3]=+g[e>>2];e=u+(yf(u,64,j,t)|0)|0;j=z+4|0;Ze(t,+g[z>>2],+g[j>>2]+ +g[o>>2]);Ze(v,.5,0.0);sj(t,s,u,e,0,v,0);if(+g[y>>2]>0.0){Ze(w,+g[s>>2]+ +g[x+5428>>2],+g[j>>2]+ +g[o>>2]);c[t>>2]=c[w>>2];c[t+4>>2]=c[w+4>>2];pj(t,b,0,1)}}else d=0}else d=0;l=A;return d|0}function Uo(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;var e=0,f=0;e=l;l=l+16|0;f=e;g[f>>2]=+g[b>>2]*360.0/6.2831854820251465;a=So(a,f,c,d,8623,1.0)|0;g[b>>2]=+g[f>>2]*6.2831854820251465/360.0;l=e;return a|0}function Vo(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[d>>2]|0);h=To(a,b,j,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[d>>2]=~~+g[j>>2];l=i;return h|0}function Wo(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(So(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function Xo(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0.0,k=0,l=0;d=Zi()|0;i=d+220|0;l=d+420|0;Kl(l,(c[l>>2]|0)+1|0);l=Iq(l)|0;k=i;e=c[k+4>>2]|0;f=l;c[f>>2]=c[k>>2];c[f+4>>2]=e;f=d+244|0;e=f;k=c[e+4>>2]|0;h=l+8|0;c[h>>2]=c[e>>2];c[h+4>>2]=k;h=d+456|0;c[l+16>>2]=c[h>>2];k=d+460|0;c[l+20>>2]=c[k>>2];e=d+252|0;c[l+24>>2]=c[e>>2];c[l+28>>2]=c[d+256>>2];b=d+268|0;c[l+32>>2]=c[b>>2];a[l+36>>0]=a[(c[11106]|0)+6476>>0]|0;a[l+37>>0]=1;j=+g[i>>2]-+g[d+20>>2]-+g[d+464>>2];g[k>>2]=j;g[h>>2]=j;h=c[i+4>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=h;g[e>>2]=0.0;g[b>>2]=+g[d+224>>2]+-9999.0;return}function Yo(){var b=0,d=0,e=0,f=0,h=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+32|0;b=p+8|0;d=p;e=c[11106]|0;f=Zi()|0;h=f+420|0;if(ir(h)|0)Bb(10557,5025,12208,33199);n=Iq(h)|0;i=f+244|0;Yg(b,n,i);q=b+8|0;ql(d,b,q);m=d;k=c[m+4>>2]|0;c[q>>2]=c[m>>2];c[q+4>>2]=k;q=n;k=c[q+4>>2]|0;m=f+220|0;c[m>>2]=c[q>>2];c[m+4>>2]=k;ql(d,n+8|0,i);m=d;k=c[m+4>>2]|0;c[i>>2]=c[m>>2];c[i+4>>2]=k;c[f+252>>2]=c[n+24>>2];i=n+28|0;k=c[i>>2]|0;m=f+256|0;c[m>>2]=k;c[f+456>>2]=c[n+16>>2];c[f+460>>2]=c[n+20>>2];g[f+268>>2]=+g[f+224>>2]+-9999.0;if(a[n+37>>0]|0){g[m>>2]=+pg(+g[f+264>>2],(c[j>>2]=k,+g[j>>2]));ch(d,b);$g(d,+g[i>>2]);dh(b,0,0)|0}if((((a[n+36>>0]|0)==0?a[e+6476>>0]|0:0)?(o=c[e+6464>>2]|0,o|0):0)?(c[(c[e+6492>>2]|0)+624>>2]|0)==(c[f+624>>2]|0):0)c[f+280>>2]=o;q=f+288|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];nr(h);l=p;return}function Zo(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,2,c,d,e,f)|0}function _o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,3,c,d,e,f)|0}function $o(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return Wo(a,b,4,c,d,e,f)|0}function ap(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,l=0;if(!(a[(Zi()|0)+149>>0]|0)){j=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){l=j+5428|0;j=0;k=0;do{Ao(k);j=j|(ho(8637,d+(k<<2)|0,f,h,i)|0);ah(0.0,+g[l>>2]);Zn();gg();k=k+1|0}while((k|0)!=(e|0))}else j=0;Zn();En(b,nj(b,0)|0);Yo()}else j=0;return j|0}function bp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,2,c,d,e)|0}function cp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,3,c,d,e)|0}function dp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ap(a,b,4,c,d,e)|0}function ep(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,C=0,E=0;z=l;l=l+48|0;v=z+16|0;t=z+32|0;r=z+8|0;s=z;u=z+24|0;y=c[11106]|0;p=y+6464|0;if((c[p>>2]|0)==(d|0))q=9;else q=(c[y+6448>>2]|0)==(d|0)?8:7;q=Lf(q,1.0)|0;Bj(b,d,1);E=b;A=c[E+4>>2]|0;C=r;c[C>>2]=c[E>>2];c[C+4>>2]=A;C=b+8|0;A=c[C+4>>2]|0;b=s;c[b>>2]=c[C>>2];c[b+4>>2]=A;o=+g[y+5412>>2];c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[v>>2]=c[s>>2];c[v+4>>2]=c[s+4>>2];uj(t,v,q,1,o);a:do if((c[p>>2]|0)==(d|0)){switch(c[y+6496>>2]|0){case 1:{if(a[y+216>>0]|0)break a;Zg();break a}case 2:break;default:break a}if((c[y+6680>>2]|0)==(d|0)?(a[y+6477>>0]|0)==0:0)Zg()}while(0);if((c[p>>2]|0)==(d|0)){if(a[y+6477>>0]|0){c[y+10536>>2]=c[e>>2];Ze(v,0.0,0.0);A=v;C=c[A+4>>2]|0;E=y+10540|0;c[E>>2]=c[A>>2];c[E+4>>2]=C}if(f==0.0?(m=i-h,m!=0.0&m<3402823466385288598117041.0e14):0)f=m*+g[y+10548>>2];d=y+10536|0;m=+g[d>>2];Vj(v,0,1.0);switch(c[y+6496>>2]|0){case 1:{if($h(0)|0){o=+g[v>>2];b=y+10540|0;n=o-+g[b>>2];if((a[y+234>>0]|0)!=0?(w=+g[y+10556>>2],w>=0.0):0)n=n*w;if((a[y+235>>0]|0)!=0?(x=+g[y+10552>>2],x>=0.0):0)n=n*x;g[b>>2]=o}else n=0.0;break}case 2:{Oh(u,3,5,.10000000149011612,10.0);n=+g[u>>2];do if(h=i&n>0.0)?!(m<=h&n<0.0):0)break;n=0.0}while(0);f=+pg(f,+Po(j));break}default:n=0.0}n=n*f;if(!(n!=n|0.0!=0.0|n==0.0)){if(+B(+(k+-1.0))>1.0000000474974513e-03){E=m>=0.0;x=E?1.0:-1.0;m=+D(+(E?m:-m),+(1.0/k))+x*n;E=m>=0.0;m=(E?1.0:-1.0)*(x*+D(+(E?m:-m),+k))}else m=m+n;if(h>2]=m}m=+Oo(m,j);if(+g[e>>2]!=m){g[e>>2]=m;b=1}else b=0}else b=0;l=z;return b|0}function fp(b,d,e,f,i,j,k){b=b|0;d=d|0;e=+e;f=+f;i=+i;j=j|0;k=+k;var m=0,n=0.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;B=l;l=l+144|0;t=B;y=B+136|0;z=B+120|0;A=B+104|0;p=B+88|0;u=B+16|0;m=B+8|0;v=B+80|0;q=Zi()|0;if(!(a[q+149>>0]|0)){w=c[11106]|0;r=Eg(q,b,0)|0;n=+Zl();tj(y,b,0,1,-1.0);x=q+220|0;o=w+5404|0;s=w+5408|0;Ze(p,n,+g[y+4>>2]+ +g[s>>2]*2.0);nf(A,x,p);Yg(z,x,A);nf(p,z,o);x=z+8|0;lf(u,x,o);Yg(A,p,u);n=+g[y>>2];if(n>0.0)n=n+ +g[w+5428>>2];else n=0.0;Ze(m,n,0.0);nf(u,x,m);Yg(p,z,u);a:do if(dh(p,r,z)|0){m=kh(z,r)|0;o=(j|0)==0?8618:j;j=Mo(o,3)|0;do if(mh(q,r,1)|0){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;m=17}else{if(m)if((a[w+968>>0]|0)==0?(a[w+973>>0]|0)==0:0)m=10;else m=13;else m=10;if((m|0)==10)if((c[w+6672>>2]|0)!=(r|0)){if((c[w+6684>>2]|0)==(r|0)?(c[w+10512>>2]|0)!=(r|0):0)m=13}else m=13;if((m|0)==13){Wg(r,q);Xg(r,q);dj(q);c[w+6480>>2]=12;if(a[w+233>>0]|0){m=17;break}if(a[w+973>>0]|0){m=17;break}if((c[w+6684>>2]|0)==(r|0)){m=17;break}}if((c[w+6464>>2]|0)==(r|0)?(c[w+10512>>2]|0)==(r|0):0)break;bh(p,+g[s>>2]);m=ep(z,r,d,e,f,i,j,k)|0;h[t>>3]=+g[d>>2];d=u+(yf(u,64,o,t)|0)|0;Ze(t,.5,.5);sj(z,x,u,d,0,t,0);if(+g[y>>2]>0.0){Ze(v,+g[x>>2]+ +g[w+5428>>2],+g[A+4>>2]);c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];pj(t,b,0,1)}break a}while(0);if((m|0)==17)c[w+10512>>2]=0;m=Ho(z,b,1,d,r,j)|0}else{bh(p,+g[s>>2]);m=0}while(0)}else m=0;l=B;return m|0}function gp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=+k;var l=0,m=0,n=0;if(!(a[(Zi()|0)+149>>0]|0)){l=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){n=l+5428|0;l=0;m=0;do{Ao(m);l=l|(fp(8637,d+(m<<2)|0,f,h,i,j,k)|0);ah(0.0,+g[n>>2]);Zn();gg();m=m+1|0}while((m|0)!=(e|0))}else l=0;Zn();En(b,nj(b,0)|0);Yo()}else l=0;return l|0}function hp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,2,c,d,e,f,g)|0}function ip(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,3,c,d,e,f,g)|0}function jp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return gp(a,b,4,c,d,e,f,g)|0}function kp(b,d,e,f,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;l=+l;var m=0,n=0.0,o=0,p=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);p=h>=i;n=+g[e>>2];if(!p)n=+sf(i,n);o=fp(8641,d,f,p?-3402823466385288598117041.0e14:h,n,j,l)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);n=+g[d>>2];if(!p)n=+pg(h,n);k=o|(fp(8647,e,f,n,p?3402823466385288598117041.0e14:i,k|0?k:j,l)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn();m=k}else m=0;return m|0}function lp(a,b,d,e,f,h){a=a|0;b=b|0;d=+d;e=e|0;f=f|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;j=i;g[j>>2]=+(c[b>>2]|0);h=fp(a,j,d,+(e|0),+(f|0),h|0?h:8632,1.0)|0;c[b>>2]=~~+g[j>>2];l=i;return h|0}function mp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if(!(a[(Zi()|0)+149>>0]|0)){k=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){m=k+5428|0;k=0;l=0;do{Ao(l);k=k|(lp(8637,d+(l<<2)|0,f,h,i,j)|0);ah(0.0,+g[m>>2]);Zn();gg();l=l+1|0}while((l|0)!=(e|0))}else k=0;Zn();En(b,nj(b,0)|0);Yo()}else k=0;return k|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,2,c,d,e,f)|0}function op(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,3,c,d,e,f)|0}function pp(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return mp(a,b,4,c,d,e,f)|0}function qp(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=e|0;f=+f;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;if(!(a[(Zi()|0)+149>>0]|0)){m=c[11106]|0;go(b);Xo();Yl(2,0.0);o=(h|0)>=(i|0);l=c[e>>2]|0;if(!o)l=rp(i,l)|0;n=lp(8641,d,f,o?-2147483648:h,l,j)|0;gg();m=m+5428|0;ah(0.0,+g[m>>2]);l=c[d>>2]|0;if(!o)l=sp(h,l)|0;l=n|(lp(8647,e,f,l,o?2147483647:i,k|0?k:j)|0);gg();ah(0.0,+g[m>>2]);En(b,nj(b,0)|0);Yo();Zn()}else l=0;return l|0}function rp(a,b){a=a|0;b=b|0;return ((a|0)<(b|0)?a:b)|0}function sp(a,b){a=a|0;b=b|0;return ((a|0)>=(b|0)?a:b)|0}function tp(b,d,e,f,i,j,k,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=+m;n=+n;o=o|0;var p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.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;R=l;l=l+176|0;H=R+96|0;Q=R+88|0;y=R+72|0;x=R+40|0;I=R+160|0;J=R+24|0;K=R+144|0;r=R+128|0;v=R+16|0;w=R+8|0;L=R+112|0;M=R+104|0;N=R;O=R+120|0;F=Zi()|0;if(!(a[F+149>>0]|0)){P=c[11106]|0;tj(I,d,0,1,-1.0);p=+g[o>>2];if(p==0.0){p=+Zl();g[o>>2]=p}o=o+4|0;q=+g[o>>2];if(q==0.0){q=+g[I+4>>2]+ +g[P+5408>>2]*2.0;g[o>>2]=q}E=F+220|0;Ze(Q,p,q);nf(H,E,Q);Yg(J,E,H);E=P+5404|0;nf(H,J,E);G=J+8|0;lf(Q,G,E);Yg(K,H,Q);q=+g[I>>2];if(q>0.0)q=q+ +g[P+5428>>2];else q=0.0;Ze(Q,q,0.0);nf(H,G,Q);Yg(r,J,H);E=P+5408|0;bh(r,+g[E>>2]);if(dh(r,0,J)|0){u=kh(K,0)|0;r=m==3402823466385288598117041.0e14;t=n==3402823466385288598117041.0e14;if(r|t){if((i|0)>0){q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14;o=0;do{D=+yd[e&15](f,o);q=+sf(q,D);s=+pg(s,D);o=o+1|0}while((o|0)!=(i|0))}else{q=3402823466385288598117041.0e14;s=-3402823466385288598117041.0e14}D=r?q:m;s=t?s:n}else{D=m;s=n}C=J;B=c[C+4>>2]|0;z=v;c[z>>2]=c[C>>2];c[z+4>>2]=B;z=G;B=c[z+4>>2]|0;C=w;c[C>>2]=c[z>>2];c[C+4>>2]=B;C=Lf(7,1.0)|0;A=+g[P+5412>>2];c[Q>>2]=c[v>>2];c[Q+4>>2]=c[v+4>>2];c[H>>2]=c[w>>2];c[H+4>>2]=c[w+4>>2];uj(Q,H,C,1,A);if((i|0)>0){C=(b|0)==0;t=C<<31>>31;B=(rp(~~p,i)|0)+t|0;t=t+i|0;do if(u){A=+g[K>>2];o=~~(+gi((+g[P+208>>2]-A)/(+g[K+8>>2]-A),0.0,.9998999834060669)*+(t|0));if(!((o|0)>-1&(o|0)<(i|0)))Bb(8653,5025,9278,8688);p=+yd[e&15](f,(o+j|0)%(i|0)|0);r=o+1|0;q=+yd[e&15](f,(r+j|0)%(i|0)|0);if(C){c[x>>2]=o;h[x+8>>3]=p;c[x+16>>2]=r;h[x+24>>3]=q;ok(8695,x);break}if((b|0)==1){c[y>>2]=o;h[y+8>>3]=p;ok(8715,y)}}else o=-1;while(0);n=1.0/+(B|0);A=s-D;Ze(H,0.0,1.0-+Kf((+yd[e&15](f,(j|0)%(i|0)|0)-D)/A));if(s*D<0.0)m=-D/A;else m=D<0.0?0.0:1.0;y=Lf(C?36:38,1.0)|0;z=Lf(C?37:39,1.0)|0;a:do if((B|0)>0){s=+(t|0);w=j+1|0;x=K+8|0;v=F+616|0;t=(b|0)==1;r=0;p=0.0;while(1){u=~~(p*s+.5);p=n+p;if(!((u|0)>-1&(u|0)<(i|0)))break;Ze(Q,p,1.0-+Kf((+yd[e&15](f,(w+u|0)%(i|0)|0)-D)/A));El(L,K,x,H);if(!C){Ze(N,+g[Q>>2],m);El(M,K,x,N);if(t){q=+g[M>>2];if(q>=+g[L>>2]+2.0)g[M>>2]=q+-1.0;Hw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,0.0,15)}}else{j=Q;F=c[j+4>>2]|0;b=N;c[b>>2]=c[j>>2];c[b+4>>2]=F;El(M,K,x,N);Fw(c[v>>2]|0,L,M,(o|0)==(u|0)?z:y,1.0)}j=Q;F=c[j+4>>2]|0;b=H;c[b>>2]=c[j>>2];c[b+4>>2]=F;r=r+1|0;if((r|0)>=(B|0))break a}Bb(8725,5025,9303,8688)}while(0)}if(k|0){Ze(H,+g[J>>2],+g[J+4>>2]+ +g[E>>2]);Ze(Q,.5,0.0);sj(H,G,k,0,0,Q,0)}if(+g[I>>2]>0.0){Ze(O,+g[G>>2]+ +g[P+5428>>2],+g[K+4>>2]);c[H>>2]=c[O>>2];c[H+4>>2]=c[O+4>>2];pj(H,d,0,1)}}}l=R;return}function up(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(0,a,b,d,e,f,g,h,i,m);l=k;return}function vp(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+8|0;n=k;p=j;o=c[p+4>>2]|0;j=n;c[j>>2]=c[p>>2];c[j+4>>2]=o;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];tp(1,a,b,d,e,f,g,h,i,m);l=k;return}function wp(b,d,e){b=+b;d=d|0;e=e|0;var f=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,v=0,w=0.0,x=0.0,y=0,z=0,A=0;v=l;l=l+128|0;u=v+112|0;n=v+80|0;o=v+48|0;f=v+40|0;r=v+24|0;s=v+72|0;i=v+16|0;k=v+8|0;m=v;t=v+64|0;p=v+56|0;j=Zi()|0;if((a[j+149>>0]|0)==0?(q=c[11106]|0,A=j+220|0,y=c[A+4>>2]|0,z=f,c[z>>2]=c[A>>2],c[z+4>>2]=y,z=d,y=c[z+4>>2]|0,d=i,c[d>>2]=c[z>>2],c[d+4>>2]=y,x=+Zl(),d=q+5408|0,w=+g[q+6228>>2]+ +g[d>>2]*2.0,c[u>>2]=c[i>>2],c[u+4>>2]=c[i+4>>2],ph(s,u,x,w),nf(n,f,s),Yg(r,f,n),bh(r,+g[d>>2]),dh(r,0,0)|0):0){b=+Kf(b);A=r;z=c[A+4>>2]|0;d=k;c[d>>2]=c[A>>2];c[d+4>>2]=z;d=r+8|0;z=d;A=c[z+4>>2]|0;y=m;c[y>>2]=c[z>>2];c[y+4>>2]=A;y=Lf(7,1.0)|0;A=q+5412|0;x=+g[A>>2];c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[u>>2]=c[m>>2];c[u+4>>2]=c[m+4>>2];uj(n,u,y,1,x);x=-+g[q+5416>>2];Ze(u,x,x);Dj(r,u);x=+Pl(+g[r>>2],+g[d>>2],b);Ze(u,x,+g[r+12>>2]);y=c[j+616>>2]|0;z=Lf(38,1.0)|0;eA(y,r,z,0.0,b,+g[A>>2]);if(!e){h[o>>3]=b*100.0+.009999999776482582;yf(n,32,8762,o)|0;e=n}tj(s,e,0,0,-1.0);b=+g[s>>2];if(b>0.0){x=+gi(+g[u>>2]+ +g[q+5420>>2],+g[r>>2],+g[d>>2]-b-+g[q+5428>>2]);Ze(t,x,+g[r+4>>2]);Ze(p,0.0,.5);sj(t,d,e,0,s,p,r)}}l=v;return}function xp(b,d){b=b|0;d=d|0;var e=0,f=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,v=0,w=0,x=0,y=0.0;x=l;l=l+144|0;w=x+120|0;v=x+112|0;o=x+104|0;p=x+40|0;q=x+88|0;r=x+16|0;s=x+72|0;t=x+64|0;h=x+56|0;u=x+32|0;i=x+8|0;j=x+80|0;k=x;e=Zi()|0;if(!(a[e+149>>0]|0)){m=c[11106]|0;n=Eg(e,b,0)|0;tj(o,b,0,1,-1.0);e=e+220|0;f=m+5408|0;y=+g[o+4>>2]+ +g[f>>2]*2.0;Ze(v,y,y);nf(w,e,v);Yg(p,e,w);bh(p,+g[f>>2]);c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];if(+g[o>>2]>0.0)ah(0.0,+g[m+5428>>2]);Ze(v,0.0,+g[f>>2]);nf(w,e,v);Ze(h,0.0,+g[f>>2]);nf(t,e,h);nf(s,t,o);Yg(r,w,s);if(+g[o>>2]>0.0){y=+Ul(r);Ze(w,y,+ki(p));$g(w,+g[f>>2]);tl(v,p,r);ql(s,p+8|0,r+8|0);Yg(w,v,s);c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[q+12>>2]=c[w+12>>2]}if(dh(q,n,0)|0){e=Ml(q,n,s,t,0)|0;if(e)a[d>>0]=a[d>>0]^1;Bj(q,n,1);q=p;n=c[q+4>>2]|0;h=u;c[h>>2]=c[q>>2];c[h+4>>2]=n;h=p+8|0;n=c[h+4>>2]|0;q=i;c[q>>2]=c[h>>2];c[q+4>>2]=n;s=a[s>>0]|0;t=Lf((a[t>>0]|0)==0|s<<24>>24==0?(s<<24>>24?8:7):9,1.0)|0;y=+g[m+5412>>2];c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[w>>2]=c[i>>2];c[w+4>>2]=c[i+4>>2];uj(v,w,t,1,y);if(a[d>>0]|0){y=+Ul(p);y=+pg(1.0,+(~~(+sf(y,+ki(p))/6.0)|0));Ze(v,y,y);nf(j,p,v);v=Lf(18,1.0)|0;y=+Ul(p)-y*2.0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];yj(w,v,y)}if(a[m+10628>>0]|0)qj(r,a[d>>0]|0?8769:8773,0);if(+g[o>>2]>0.0){t=r;u=c[t+4>>2]|0;v=k;c[v>>2]=c[t>>2];c[v+4>>2]=u;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];pj(w,b,0,1)}}else e=0}else e=0;l=x;return e|0}function yp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;a[f>>0]=(c[d>>2]&e|0)==(e|0)&1;g=xp(b,f)|0;if(g){if(!(a[f>>0]|0))b=c[d>>2]&~e;else b=c[d>>2]|e;c[d>>2]=b}l=h;return g|0}function zp(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0.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.0;w=l;l=l+112|0;v=w+96|0;r=w+88|0;m=w+72|0;j=w+56|0;s=w+8|0;t=w+48|0;n=w+40|0;o=w+32|0;u=w+24|0;p=w;h=Zi()|0;if(!(a[h+149>>0]|0)){q=c[11106]|0;i=Eg(h,b,0)|0;tj(r,b,0,1,-1.0);e=h+220|0;f=q+5408|0;k=+g[r+4>>2]+ +g[f>>2]*2.0+-1.0;Ze(j,k,k);nf(v,e,j);Yg(m,e,v);bh(m,+g[f>>2]);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];if(+g[r>>2]>0.0)ah(0.0,+g[q+5428>>2]);Ze(t,0.0,+g[f>>2]);nf(v,e,t);Ze(u,0.0,+g[f>>2]);nf(o,e,u);nf(n,o,r);Yg(s,v,n);if(+g[r>>2]>0.0){k=+Ul(s);Ze(v,k,+ki(m));$g(v,+g[f>>2]);Ap(j,s)}if(dh(j,i,0)|0){Un(t,m);g[t>>2]=+(~~+g[t>>2]|0)+.5;e=t+4|0;g[e>>2]=+(~~+g[e>>2]|0)+.5;k=+ki(m)*.5;e=Ml(j,i,n,o,0)|0;Bj(j,i,1);h=h+616|0;j=c[h>>2]|0;n=a[n>>0]|0;Ow(j,t,k,Lf((a[o>>0]|0)==0|n<<24>>24==0?(n<<24>>24?8:7):9,1.0)|0,16);if(d){x=+Ul(m);x=+pg(1.0,+(~~(+sf(x,+ki(m))/6.0)|0));o=c[h>>2]|0;Ow(o,t,k-x,Lf(18,1.0)|0,16)}f=q+5416|0;if(+g[f>>2]>0.0){n=c[h>>2]|0;Ze(u,1.0,1.0);nf(v,t,u);o=Lf(6,1.0)|0;Nw(n,v,k,o,16,+g[f>>2]);o=c[h>>2]|0;u=Lf(5,1.0)|0;Nw(o,t,k,u,16,+g[f>>2])}if(a[q+10628>>0]|0)qj(s,d?8777:8781,0);if(+g[r>>2]>0.0){t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];pj(v,b,0,1)}}else e=0}else e=0;l=w;return e|0}function Ap(a,b){a=a|0;b=b|0;var c=0.0,d=0;c=+g[b>>2];if(+g[a>>2]>c)g[a>>2]=c;d=a+4|0;c=+g[b+4>>2];if(+g[d>>2]>c)g[d>>2]=c;d=a+8|0;c=+g[b+8>>2];if(+g[d>>2]>2]=c;d=a+12|0;c=+g[b+12>>2];if(+g[d>>2]>2]=c;return}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;a=zp(a,(c[b>>2]|0)==(d|0))|0;if(a)c[b>>2]=d;return a|0}function Cp(b,c){b=b|0;c=c|0;Dp(b,b+56|0,c);a[b+3280>>0]=1;Ep(b);return}function Dp(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;r=u+24|0;s=u;m=f+16|0;a:while(1){if((h|0)<65549)switch(h|0){case 65546:{t=15;break a}case 65547:{t=16;break a}case 65536:{t=17;break a}case 65537:{t=22;break a}case 65548:{t=29;break a}case 65544:{t=72;break a}case 65545:{t=77;break a}case 65542:{t=82;break a}case 65543:{t=83;break a}case 65540:{t=86;break a}case 65541:{t=92;break a}case 65539:{t=42;break}case 65538:{t=57;break}default:{t=3;break a}}else{if((h|0)>=196613){t=114;break}if((h|0)<196610){t=115;break}switch(h|0){case 196612:{t=98;break a}case 196611:{t=42;break}case 196610:{t=57;break}default:{t=3;break a}}}if((t|0)==42){h=h&131072;if(!(a[m>>0]|0)){t=43;break}h=h|65537;continue}else if((t|0)==57){h=h&131072;if(!(a[m>>0]|0)){t=58;break}h=h|65536;continue}}b:switch(t|0){case 15:{_t(e,f);a[f+15>>0]=0;break}case 16:{$t(e,f);a[f+15>>0]=0;break}case 17:{if((c[f+4>>2]|0)==(c[f+8>>2]|0)){h=c[f>>2]|0;if((h|0)>0)c[f>>2]=h+-1}else au(f);a[f+15>>0]=0;break}case 22:{if((c[f+4>>2]|0)==(c[f+8>>2]|0))c[f>>2]=(c[f>>2]|0)+1;else bu(e,f);cu(e,f);a[f+15>>0]=0;break}case 29:if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=eu(e,c[f>>2]|0)|0;cu(e,f);break}else{au(f);break}case 43:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))bu(e,f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);h=c[r+16>>2]|0;if(h|0){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];i=(c[r+12>>2]|0)+h|0;c[f>>2]=i;hu(s,e,i);m=c[s+20>>2]|0;c:do if((m|0)>0){h=0;j=+g[s>>2];do{k=+iu(e,i,h);if(k==-1.0)break c;j=j+k;if(j>n)break c;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(m|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 58:{q=(h|0)!=0;if(!q){if((c[f+4>>2]|0)!=(c[f+8>>2]|0))au(f)}else du(f);cu(e,f);gu(r,e,c[f>>2]|0,d[m>>0]|0);m=c[r+20>>2]|0;if((m|0)!=(c[r+12>>2]|0)){o=f+15|0;p=f+20|0;n=+g[(a[o>>0]|0?p:r)>>2];c[f>>2]=m;hu(s,e,m);i=c[s+20>>2]|0;d:do if((i|0)>0){j=+g[s>>2];h=0;do{k=+iu(e,m,h);if(k==-1.0)break d;j=j+k;if(j>n)break d;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0}while((h|0)<(i|0))}while(0);cu(e,f);a[o>>0]=1;g[p>>2]=n;if(q)c[f+8>>2]=c[f>>2]}break}case 82:{c[f+8>>2]=0;c[f+4>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break}case 83:{c[f>>2]=Ut(e)|0;c[f+8>>2]=0;c[f+4>>2]=0;a[f+15>>0]=0;break}case 86:{cu(e,f);au(f);e:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)do{if((ku(e,h+-1|0)|0)<<16>>16==10)break e;s=c[f>>2]|0;h=s+-1|0;c[f>>2]=h}while((s|0)>1)}else c[f>>2]=0;while(0);a[f+15>>0]=0;break}case 92:{i=Ut(e)|0;cu(e,f);au(f);f:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{if((ku(e,h)|0)<<16>>16==10)break f;h=(c[f>>2]|0)+1|0;c[f>>2]=h}while((h|0)<(i|0))}else c[f>>2]=i;while(0);a[f+15>>0]=0;break}case 98:{cu(e,f);du(f);g:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)>0)while(1){s=(ku(e,h+-1|0)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break g;i=h+-1|0;c[f>>2]=i;if((h|0)>1)h=i;else{h=i;break}}}else{c[f>>2]=0;h=0}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break}case 114:switch(h|0){case 196616:{t=72;break b}case 196617:{t=77;break b}case 196620:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=eu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196621:{h=f+8|0;if((c[f+4>>2]|0)==(c[h>>2]|0))du(f);s=fu(e,c[f>>2]|0)|0;c[f>>2]=s;c[h>>2]=s;cu(e,f);break b}case 196614:{du(f);c[f+8>>2]=0;c[f>>2]=0;a[f+15>>0]=0;break b}case 196615:{du(f);e=Ut(e)|0;c[f+8>>2]=e;c[f>>2]=e;a[f+15>>0]=0;break b}case 196613:{i=Ut(e)|0;cu(e,f);du(f);h:do if(!(a[m>>0]|0)){h=c[f>>2]|0;if((h|0)<(i|0))do{s=(ku(e,h)|0)<<16>>16==10;h=c[f>>2]|0;if(s)break h;h=h+1|0;c[f>>2]=h}while((h|0)<(i|0))}else{c[f>>2]=i;h=i}while(0);c[f+8>>2]=h;a[f+15>>0]=0;break b}default:{t=3;break b}}case 115:{if((h|0)<196608){switch(h|0){case 65549:break;default:{t=3;break b}}if((c[f+4>>2]|0)==(c[f+8>>2]|0)){c[f>>2]=fu(e,c[f>>2]|0)|0;cu(e,f);break}else{bu(e,f);break}}switch(h|0){case 196608:break;case 196609:{du(f);s=f+8|0;c[s>>2]=(c[s>>2]|0)+1;cu(e,f);c[f>>2]=c[s>>2];a[f+15>>0]=0;break b}default:{t=3;break b}}cu(e,f);du(f);i=f+8|0;h=c[i>>2]|0;if((h|0)>0){h=h+-1|0;c[i>>2]=h}c[f>>2]=h;a[f+15>>0]=0;break}}do if((t|0)==3){h=Tt(h)|0;if((h|0)>0){b[r>>1]=h;if((h|0)==10?a[m>>0]|0:0)break;if(((a[f+12>>0]|0)!=0?(c[f+4>>2]|0)==(c[f+8>>2]|0):0)?(i=c[f>>2]|0,(i|0)<(Ut(e)|0)):0){Vt(e,f,i);Wt(e,c[f>>2]|0,1);if(Xt(e,c[f>>2]|0,r,1)|0){c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}else t=11;if((t|0)==11?(Yt(e,f),Xt(e,c[f>>2]|0,r,1)|0):0){Zt(f,c[f>>2]|0,1);c[f>>2]=(c[f>>2]|0)+1;a[f+15>>0]=0}}}else if((t|0)==72){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){t=Ut(e)|0;h=c[f>>2]|0;if((h|0)<(t|0))ju(e,f,h,1)}else Yt(e,f);a[f+15>>0]=0}else if((t|0)==77){if((c[f+4>>2]|0)==(c[f+8>>2]|0)){cu(e,f);h=c[f>>2]|0;if((h|0)>0){ju(e,f,h+-1|0,1);c[f>>2]=(c[f>>2]|0)+-1}}else Yt(e,f);a[f+15>>0]=0}while(0);l=u;return}function Ep(a){a=a|0;g[a+3276>>2]=-.30000001192092896;return}function Fp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=b+24|0;if((e+d|0)>(c[j>>2]|0))Bb(8785,5025,9703,39557);f=(c[b+20>>2]|0)+d|0;g=f+e|0;h=a[g>>0]|0;if(h<<24>>24){i=f;while(1){g=g+1|0;f=i+1|0;a[i>>0]=h;h=a[g>>0]|0;if(!(h<<24>>24))break;else i=f}}a[f>>0]=0;g=b+36|0;f=c[g>>2]|0;if((f+e|0)<(d|0))if((f|0)<(d|0))d=f;else k=8;else{d=f-e|0;k=8}if((k|0)==8)c[g>>2]=d;c[b+44>>2]=d;c[b+40>>2]=d;a[b+32>>0]=1;c[j>>2]=(c[j>>2]|0)-e;return}function Gp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if(!f)g=v9(e)|0;else g=f-e|0;h=b+24|0;f=c[h>>2]|0;if((g+1+f|0)<(c[b+28>>2]|0)){if((f|0)==(d|0))f=b+20|0;else{i=b+20|0;j=(c[i>>2]|0)+d|0;rca(j+g|0,j|0,f-d|0)|0;f=i}qca((c[f>>2]|0)+d|0,e|0,g|0)|0;a[(c[f>>2]|0)+((c[h>>2]|0)+g)>>0]=0;e=b+36|0;f=c[e>>2]|0;if((f|0)>=(d|0)){f=f+g|0;c[e>>2]=f}c[b+44>>2]=f;c[b+40>>2]=f;a[b+32>>0]=1;c[h>>2]=(c[h>>2]|0)+g}return}function Hp(a){a=a|0;return (c[a>>2]|0)==0|0}function Ip(a){a=a|0;return (c[a>>2]|0)==0|0}function Jp(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))rv(a,sv(a,b)|0);c[a>>2]=b;return}function Kp(a){a=a|0;var b=0,d=0;d=a+56|0;b=c[a+44>>2]|0;c[d>>2]=rp(c[d>>2]|0,b)|0;d=a+60|0;c[d>>2]=rp(c[d>>2]|0,b)|0;a=a+64|0;c[a>>2]=rp(c[a>>2]|0,b)|0;return}function Lp(a,b){a=a|0;b=b|0;wu(a,b);return}function Mp(b){b=b|0;var d=0;c[b+60>>2]=0;d=c[b+44>>2]|0;c[b+64>>2]=d;c[b+56>>2]=d;a[b+71>>0]=0;return}function Np(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;b=xu(b,e,f)|0;c[d>>2]=b;c[d+4>>2]=b;c[d+8>>2]=b;a[d+15>>0]=0;return}function Op(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;a=xu(a,d,e)|0;f=b+4|0;g=b+8|0;if((c[f>>2]|0)==(c[g>>2]|0))c[f>>2]=c[b>>2];c[g>>2]=a;c[b>>2]=a;return}function Pp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;g=c[a>>2]|0;if(g>>>0<128&(g|0)!=32?(paa(g&255)|0)==0:0)if((g+-57344|0)>>>0<6400?1:(((g|0)==9?d>>>10&1:0)|(d&1048576|0)!=0&(g|0)==10&1|0)==0)g=0;else h=5;else if((g+-57344|0)>>>0<6400)g=0;else h=5;a:do if((h|0)==5){if(d&15){h=g+-48|0;if((d&1|0)!=0&h>>>0>9)switch(g|0){case 42:case 43:case 45:case 46:case 47:break;default:{g=0;break a}}if(!(((g&-33)+-65|0)>>>0<6|((d&2|0)==0|h>>>0<10))){g=0;break}h=g+-32|0;if((d&4|0)!=0&(g+-97|0)>>>0<26){c[a>>2]=h;g=h}if((d&8|0)!=0?Yq(g)|0:0){g=0;break}}do if(d&512|0){h=j+12|0;i=h+36|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=512;h=j+14|0;b[h>>1]=g;c[j+4>>2]=d;c[j+8>>2]=f;if((Bd[e&63](j)|0)==0?(j=b[h>>1]|0,c[a>>2]=j&65535,j<<16>>16!=0):0)break;else{g=0;break a}}while(0);g=1}while(0);l=k;return g|0}function Qp(a){a=a|0;return (c[a+60>>2]|0)!=(c[a+64>>2]|0)|0}function Rp(a){a=a|0;var b=0;b=c[a+56>>2]|0;c[a+64>>2]=b;c[a+60>>2]=b;return}function Sp(b,d){b=b|0;d=d|0;if((c[d+4>>2]|0)!=(c[d+8>>2]|0)){Yt(b,d);a[d+15>>0]=0}return}function Tp(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;cu(d,e);Yt(d,e);if(!(Xt(d,c[e>>2]|0,f,g)|0)){d=e+3210|0;e=b[d>>1]|0;if(e<<16>>16)b[d>>1]=e+-1<<16>>16}else{Zt(e,c[e>>2]|0,g);c[e>>2]=(c[e>>2]|0)+g;a[e+15>>0]=0}return}function Up(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0.0,j=0.0,k=0,l=0.0,m=0,n=0,o=0,p=0.0;o=c[11106]|0;m=c[o+6224>>2]|0;p=+g[o+6228>>2];l=p/+g[m>>2];Ze(a,0.0,0.0);o=a+4|0;j=0.0;a:while(1){b:while(1){if(d>>>0>=e>>>0){n=7;break a}k=d+2|0;d=b[d>>1]|0;switch(d<<16>>16){case 13:{d=k;break}case 10:{n=6;break b}default:{n=5;break b}}}if((n|0)==5){j=j+l*+Vp(m,d);d=k;continue}else if((n|0)==6){n=0;i=+pg(+g[a>>2],j);g[a>>2]=i;g[o>>2]=p+ +g[o>>2];if(h){d=k;j=0.0;break}else{j=0.0;d=k;continue}}}if((n|0)==7)i=+g[a>>2];if(i>2]=j;i=+g[o>>2];if(j>0.0|i==0.0)g[o>>2]=p+i;if(f|0)c[f>>2]=d;return}function Vp(a,b){a=a|0;b=b|0;var d=0;b=b&65535;d=a+28|0;if((c[d>>2]|0)>(b|0))b=yu(d,b)|0;else b=a+56|0;return +(+g[b>>2])}function Wp(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;a:while(1){b:while(1){e=b+1|0;switch(a[b>>0]|0){case 0:break a;case 10:break b;default:b=e}}f=f+1|0;b=e}c[d>>2]=b;return f+1|0}function Xp(b){b=b|0;var c=0,d=0,e=0,f=0;f=l;l=l+32|0;c=f+8|0;d=f;e=Zi()|0;if(!(a[e+149>>0]|0)){e=e+220|0;nf(d,e,b);Yg(c,e,d);bh(c,0.0);dh(c,0,0)|0}l=f;return}function Yp(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Jo(a,b,c,d,e|1048576,f,g)|0}function Zp(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+96|0;o=t+24|0;s=t+16|0;n=t+8|0;k=t+32|0;p=t;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;tj(s,b,0,1,-1.0);Xo();go(b);u=+dn();Ze(n,u,u);m=(f|0)!=0;if(m){u=+Zl();eg(+pg(1.0,u-(+g[n>>2]+ +g[r+5428>>2])*2.0))}_p(d,e,i,k);if(fg(46144,k,64,j>>>1&1^1|j|16,0,0)|0)i=Ko(k,Lo((c[11106]|0)+7160|0)|0,d,e,i)|0;else i=0;if(m){gg();j=r+5428|0;ah(0.0,+g[j>>2]);if(Qn(9369,n,129)|0){$p(d,45,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}ah(0.0,+g[j>>2]);if(Qn(9371,n,129)|0){$p(d,43,e,(h|0)!=0&(a[r+233>>0]|0)!=0?h:f);i=1}}Zn();if(+g[s>>2]>0.0){ah(0.0,+g[r+5428>>2]);r=r+5408|0;Ze(p,+g[q+220>>2],+g[q+224>>2]+ +g[r>>2]);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];pj(o,b,0,1);$g(s,+g[r>>2])}Yo()}else i=0;l=t;return i|0}function _p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0;j=l;l=l+16|0;i=j+8|0;f=j;switch(a|0){case 0:{c[f>>2]=c[b>>2];yf(e,64,d,f)|0;break}case 1:{h[i>>3]=+g[b>>2];yf(e,64,d,i)|0;break}default:{}}l=j;return}function $p(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a:do switch(a|0){case 0:switch(b|0){case 43:{c[d>>2]=(c[e>>2]|0)+(c[d>>2]|0);break a}case 45:{c[d>>2]=(c[d>>2]|0)-(c[e>>2]|0);break a}default:break a}case 1:switch(b|0){case 43:{g[d>>2]=+g[d>>2]+ +g[e>>2];break a}case 45:{g[d>>2]=+g[d>>2]-+g[e>>2];break a}default:break a}default:{}}while(0);return}function aq(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o;k=o+8|0;m=o+4|0;n=o+16|0;g[k>>2]=e;g[m>>2]=f;if((h|0)<0){a[n>>0]=a[9373]|0;a[n+1>>0]=a[9374]|0;a[n+2>>0]=a[9375]|0}else{c[j>>2]=h;yf(n,16,9376,j)|0;e=+g[k>>2];f=+g[m>>2]}n=Zp(b,1,d,e>0.0?k:0,f>0.0?m:0,n,i)|0;l=o;return n|0}function bq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+4|0;h=g;c[i>>2]=d;c[h>>2]=e;f=Zp(a,0,b,(d|0)>0?i:0,(e|0)>0?h:0,f&2|0?9383:9388,f)|0;l=g;return f|0}function cq(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0;if(!(a[(Zi()|0)+149>>0]|0)){i=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){k=i+5428|0;i=0;j=0;do{Ao(j);i=i|(aq(8637,d+(j<<2)|0,0.0,0.0,f,h)|0);ah(0.0,+g[k>>2]);Zn();gg();j=j+1|0}while((j|0)!=(e|0))}else i=0;Zn();En(b,nj(b,0)|0);Yo()}else i=0;return i|0}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,2,c,d)|0}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,3,c,d)|0}function fq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cq(a,b,4,c,d)|0}function gq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0;if(!(a[(Zi()|0)+149>>0]|0)){h=c[11106]|0;Xo();go(b);Yl(e,0.0);if((e|0)>0){j=h+5428|0;h=0;i=0;do{Ao(i);h=h|(bq(8637,d+(i<<2)|0,0,0,f)|0);ah(0.0,+g[j>>2]);Zn();gg();i=i+1|0}while((i|0)!=(e|0))}else h=0;Zn();En(b,nj(b,0)|0);Yo()}else h=0;return h|0}function hq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,2,c)|0}function iq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,3,c)|0}function jq(a,b,c){a=a|0;b=b|0;c=c|0;return gq(a,b,4,c)|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,O=0;L=l;l=l+176|0;F=L+152|0;E=L+136|0;D=L+40|0;w=L+128|0;J=L+16|0;f=L+104|0;z=L+161|0;j=L+160|0;A=L+64|0;n=L+32|0;m=L+8|0;o=L+120|0;p=L;q=L+96|0;r=L+88|0;G=L+56|0;C=L+80|0;H=L+48|0;K=c[11106]|0;s=K+6580|0;t=c[s>>2]|0;c[s>>2]=0;u=Zi()|0;if(!(a[u+149>>0]|0)){v=Eg(u,b,0)|0;i=+Zl();tj(w,b,0,1,-1.0);y=u+220|0;I=K+5404|0;x=K+5408|0;Ze(E,i,+g[w+4>>2]+ +g[x>>2]*2.0);nf(F,y,E);Yg(J,y,F);y=J+8|0;h=+g[w>>2];if(h>0.0)h=h+ +g[K+5428>>2];else h=0.0;Ze(E,h,0.0);nf(F,y,E);Yg(f,J,F);bh(f,+g[x>>2]);if(dh(f,v,J)|0){j=Ml(J,v,z,j,0)|0;k=xk(v)|0;M=+dn();Ze(E,M,0.0);lf(F,y,E);Yg(A,J,F);Bj(J,v,1);f=J;N=c[f+4>>2]|0;O=n;c[O>>2]=c[f>>2];c[O+4>>2]=N;O=y;N=c[O+4>>2]|0;f=m;c[f>>2]=c[O>>2];c[f+4>>2]=N;f=Lf(7,1.0)|0;N=K+5412|0;h=+g[N>>2];c[E>>2]=c[n>>2];c[E+4>>2]=c[n+4>>2];c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];uj(E,F,f,1,h);f=J+4|0;Ze(o,+g[y>>2]-M,+g[f>>2]);O=y;m=c[O+4>>2]|0;n=p;c[n>>2]=c[O>>2];c[n+4>>2]=m;z=Lf(k|(a[z>>0]&1)!=0?22:21,1.0)|0;h=+g[N>>2];c[E>>2]=c[o>>2];c[E+4>>2]=c[o+4>>2];c[F>>2]=c[p>>2];c[F+4>>2]=c[p+4>>2];uj(E,F,z,1,h);h=+g[x>>2];Ze(q,+g[y>>2]-M+h,h+ +g[f>>2]);c[F>>2]=c[q>>2];c[F+4>>2]=c[q+4>>2];wj(F,3,1.0);if(d|0){nf(F,J,I);Ze(E,0.0,0.0);sj(F,A+8|0,d,0,0,E,0)}if(+g[w>>2]>0.0){Ze(r,+g[y>>2]+ +g[K+5428>>2],+g[f>>2]+ +g[x>>2]);c[F>>2]=c[r>>2];c[F+4>>2]=c[r+4>>2];pj(F,b,0,1)}if(j)if(k)B=16;else B=12;else if(k|(c[K+6672>>2]|0)!=(v|0))if(k)B=16;else f=0;else B=12;if((B|0)==12){if(!(c[u+324>>2]|0))c[u+644>>2]=v;qk(v);B=16}if((B|0)==16){if(!t){f=(e&30|0)==0?e|4:e;if(!(lq(f&30)|0))Bb(9391,5025,10625,33868);if(!(f&4))e=(f&2|0)==0?((f&8|0)==0?-1:20):4;else e=8;Ze(F,i,0.0);Ze(E,3402823466385288598117041.0e14,+mq(e));Tm(F,E,0,0);e=f}else{c[s>>2]=t;O=K+6628|0;g[O>>2]=+pg(+g[O>>2],i)}c[D>>2]=c[K+6552>>2];yf(E,16,9443,D)|0;f=kk(E)|0;if(f|0?a[f+145>>0]|0:0){ml(D,f);nl(C,f,D);c[F>>2]=c[C>>2];c[F+4>>2]=c[C+4>>2];ol(G,f,F);f=f+184|0;if(e&1|0)c[f>>2]=0;Bl(H,J);sl(F,H,G,f,J,1);Ze(H,0.0,0.0);Fk(F,0,H)}if(!(ti(E,0,67109187)|0)){Bk();Bb(18388,5025,10652,33868)}i=+g[I>>2];h=+g[K+5356>>2];if(i!=h)nq(i-h);f=1}}else f=0}else f=0;l=L;return f|0}function lq(a){a=a|0;return (a|0)!=0&(a+-1&a|0)==0|0}function mq(a){a=a|0;var b=0.0,d=0;d=c[11106]|0;if((a|0)<1)b=3402823466385288598117041.0e14;else{b=+g[d+5424>>2];b=+g[d+5360>>2]*2.0+((+g[d+6228>>2]+b)*+(a|0)-b)}return +b}function nq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=a+ +g[b>>2];g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function oq(){var a=0.0,b=0.0,d=0;d=c[11106]|0;a=+g[d+5404>>2];b=+g[d+5356>>2];if(a!=b)pq(a-b);Bk();return}function pq(a){a=+a;var b=0,d=0;b=c[11106]|0;d=Zi()|0;if(!(a!=0.0))a=+g[b+5444>>2];b=d+456|0;a=+g[b>>2]-a;g[b>>2]=a;g[d+220>>2]=a+ +g[d+20>>2]+ +g[d+464>>2];return}function qq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;i=n+16|0;k=n+8|0;m=n;j=c[11106]|0;c[i>>2]=0;h=c[b>>2]|0;if((h|0)>-1&(h|0)<(f|0))Nd[d&63](e,h,i)|0;if((g|0)!=-1?(c[j+6580>>2]|0)==0:0){o=+mq(g);Ze(k,0.0,0.0);Ze(m,3402823466385288598117041.0e14,o);Tm(k,m,0,0)}if(kq(a,c[i>>2]|0,0)|0){if((f|0)>0){g=0;a=0;do{Yn(g);i=(g|0)==(c[b>>2]|0);if(Nd[d&63](e,g,k)|0)h=c[k>>2]|0;else{c[k>>2]=9456;h=9456}Ze(m,0.0,0.0);if(rq(h,i,0,m)|0){c[b>>2]=g;a=1}if(i)Dn();Zn();g=g+1|0}while((g|0)!=(f|0))}else a=0;oq()}else a=0;l=n;return a|0}function rq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.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,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0;G=l;l=l+128|0;F=G+112|0;E=G+104|0;C=G+96|0;p=G+88|0;q=G+32|0;D=G+72|0;h=G+64|0;k=G+48|0;m=G+56|0;t=G+16|0;s=G+121|0;u=G+120|0;v=G+8|0;w=G;x=G+40|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=(e&2|0)!=0;if(A?c[y+468>>2]|0:0)aj();B=Eg(y,b,0)|0;tj(C,b,0,1,-1.0);n=f+4|0;Ze(p,+g[(+g[f>>2]!=0.0?f:C)>>2],+g[(+g[n>>2]!=0.0?f:C)+4>>2]);o=y+220|0;J=o;H=c[J+4>>2]|0;I=q;c[I>>2]=c[J>>2];c[I+4>>2]=H;g[q+4>>2]=+g[y+256>>2]+(c[j>>2]=H,+g[j>>2]);nf(F,q,p);Yg(D,q,F);bh(D,0.0);i=+g[y+84>>2];if(A)$m(h);else{qh(k);h=k}r=+g[h>>2];K=+pg(+g[C>>2],r+ +g[y+20>>2]-i-+g[o>>2]);L=+g[f>>2];J=(e&64|0)==0;Ze(m,J&L!=0.0?L:K,+g[(+g[n>>2]!=0.0?f:p)+4>>2]);nf(F,q,m);Yg(t,q,F);if(J&+g[f>>2]!=0.0){J=t+8|0;o=J;p=J;i=+g[J>>2]}else{p=t+8|0;i=i+ +g[p>>2];g[p>>2]=i;p=t+8|0;o=p}N=+g[z+5420>>2];M=+(~~(N*.5)|0);K=+g[z+5424>>2];L=+(~~(K*.5)|0);g[t>>2]=+g[t>>2]-M;h=t+4|0;g[h>>2]=+g[h>>2]-L;g[o>>2]=N-M+i;h=t+12|0;g[h>>2]=K-L+ +g[h>>2];h=e&32;n=(h|0)!=0;if(!(dh(t,n?0:B,0)|0))if(A?(c[y+468>>2]|0)!=0:0){sq(-1);h=0}else h=0;else{h=h<<3|e>>>1&8|((e&8|0)==0?0:2052);h=Ml(t,B,s,u,(e&4|0)==0?h:h|18)|0;f=(n^1)&d;k=a[s>>0]|0;if(!(k<<24>>24==0&(h^1))){if(((a[z+6751>>0]|0)==0?(c[z+6664>>2]|0)==(y|0):0)?(c[z+6740>>2]|0)==(c[y+332>>2]|0):0){a[z+6750>>0]=1;Kh(B,c[y+324>>2]|0);k=a[s>>0]|0}}else k=0;m=k<<24>>24==0;if(f|m^1){J=Lf(m|(a[u>>0]|0)==0?(k<<24>>24?25:24):26,1.0)|0;I=t;H=c[I+4>>2]|0;u=v;c[u>>2]=c[I>>2];c[u+4>>2]=H;u=p;H=c[u+4>>2]|0;I=w;c[I>>2]=c[u>>2];c[I+4>>2]=H;c[E>>2]=c[v>>2];c[E+4>>2]=c[v+4>>2];c[F>>2]=c[w>>2];c[F+4>>2]=c[w+4>>2];uj(E,F,J,0,0.0);Bj(t,B,10)}if(A?c[y+468>>2]|0:0){sq(-1);qh(x);g[o>>2]=+g[o>>2]-(+g[x>>2]-r)}if(n){Sk(0,z+5520|0);Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0);Xk(1)}else{Ze(F,0.0,0.0);sj(D,p,b,0,C,F,0)}if((h?((e&1|0)==0?(c[y+8>>2]&67108864|0)!=0:0):0)?(c[y+372>>2]&32|0)==0:0)yk()}}else h=0;l=G;return h|0}function sq(a){a=a|0;var b=0,d=0;b=c[(wg()|0)+468>>2]|0;if((a|0)<0)a=c[b+12>>2]|0;b=b+44|0;d=(tr(b,a)|0)+12|0;Yi(d,(tr(b,a)|0)+20|0,0);return}function tq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(rq(b,(a[c>>0]|0)!=0,d,e)|0){a[c>>0]=a[c>>0]^1;b=1}else b=0;return b|0}function uq(b,d){b=b|0;d=d|0;var e=0,f=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.0,u=0.0,v=0,w=0;s=l;l=l+96|0;i=s+80|0;n=s+72|0;e=s+64|0;f=s;h=s+56|0;o=s+40|0;p=s+24|0;q=s+8|0;r=s+16|0;j=Zi()|0;if(!(a[j+149>>0]|0)){k=Dh()|0;m=Co(b)|0;tj(n,b,0,1,-1.0);w=d;v=c[w+4>>2]|0;d=f;c[d>>2]=c[w>>2];c[d+4>>2]=v;u=+Zl();t=+cn()*7.400000095367432;t=t+ +g[k+72>>2];c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];ph(e,i,u,t);t=+g[e>>2];Ze(h,t,+pg(+g[e+4>>2],+g[n+4>>2]));d=j+220|0;nf(i,d,h);Yg(o,d,i);d=o+8|0;t=+g[n>>2];e=k+76|0;Ze(q,t>0.0?t+ +g[e>>2]:0.0,0.0);nf(i,d,q);Yg(p,o,i);q=j+288|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];Xo();if(+g[n>>2]>0.0){Ze(r,+g[d>>2]+ +g[e>>2],+g[o+4>>2]+ +g[k+56>>2]);c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];pj(i,b,0,1)}ch(i,o);Rk(m,i,0)|0;d=1}else d=0;l=s;return d|0}function vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;e=l;l=l+16|0;d=e;if((c|0)<0)c=rp(b,7)|0;Xe(d);g[d>>2]=0.0;f=(((c|0)<(b|0)?.4000000059604645:0.0)+ +(c|0))*+cn();g[d+4>>2]=f+ +g[(Dh()|0)+72>>2];d=uq(a,d)|0;l=e;return d|0}function wq(){var a=0,b=0,d=0,e=0,f=0,h=0;a=l;l=l+16|0;d=a;e=c[(Zi()|0)+620>>2]|0;b=e+288|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=Dh()|0;Vk();ah(0.0,-1.0);h=d;f=c[h+4>>2]|0;e=e+220|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;bh(d,+g[b+56>>2]);Yo();l=a;return}function xq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+48|0;j=n+16|0;k=n+8|0;m=n;if(vq(a,f,g)|0){yq(j,f,+cn());h=j+16|0;i=j+20|0;a=0;a:while(1){do{if(!(vg(j)|0))break a;f=c[h>>2]|0}while((f|0)>=(c[i>>2]|0));while(1){g=(f|0)==(c[b>>2]|0);if(!(Nd[d&63](e,f,k)|0))c[k>>2]=9456;Ao(f);o=c[k>>2]|0;Ze(m,0.0,0.0);if(rq(o,g,0,m)|0){c[b>>2]=f;a=1}if(g)Dn();Zn();f=f+1|0;if((f|0)>=(c[i>>2]|0))continue a}}wq();zq(j)}else a=0;l=n;return a|0}function yq(a,b,c){a=a|0;b=b|0;c=+c;qg(a,b,c);return}function zq(a){a=a|0;if((c[a+8>>2]|0)==-1)return;else Bb(13471,39072,1396,13488)}function Aq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=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.0;w=l;l=l+64|0;o=w+56|0;s=w;j=w+48|0;t=w+24|0;k=w+40|0;u=w+32|0;v=w+8|0;p=w+16|0;q=Zi()|0;if(!(a[q+149>>0]|0)){r=c[11106]|0;h=q+220|0;x=h;n=c[x+4>>2]|0;m=s;c[m>>2]=c[x>>2];c[m+4>>2]=n;tj(j,b,0,1,-1.0);m=f?16:48;if((c[q+364>>2]|0)==1){i=+g[j>>2];v=r+5420|0;g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*.5)|0);af(o,v,2.0);Uk(13,o);Ze(o,i,0.0);x=rq(b,0,m,o)|0;Wk(1);g[h>>2]=+g[h>>2]+ +(~~(+g[v>>2]*-.5)|0);h=x}else{if(!d)Ze(t,0.0,0.0);else tj(t,d,0,0,-1.0);n=r+6228|0;y=+og(q+540|0,+g[j>>2],+g[t>>2],+(~~(+g[n>>2]*1.2000000476837158)|0));bm(k);i=+pg(0.0,+g[k>>2]-y);Ze(o,y,0.0);h=rq(b,0,m|64,o)|0;if(+g[t>>2]>0.0){Sk(0,r+5520|0);Ze(v,i+ +g[q+560>>2],0.0);nf(u,s,v);c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];pj(o,d,0,0);Xk(1)}if(e){y=+g[n>>2];Ze(v,i+ +g[q+564>>2]+y*.4000000059604645,y*.1340000033378601*.5);nf(p,s,v);x=Lf((f^1)&1,1.0)|0;y=+g[n>>2]*.8659999966621399;c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];yj(o,x,y)}}}else h=0;l=w;return h|0}function Bq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d|0)!=0;if(f){b=Aq(b,c,(a[d>>0]|0)!=0,e)|0;if(f&b){a[d>>0]=a[d>>0]^1;b=1}}else b=Aq(b,c,0,e)|0;return b|0}function Cq(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;d=b+8|0;e=b;a=c[11106]|0;Ze(d,0.0,0.0);Ze(e,0.0,0.0);Fk(d,0,e);Ze(d,+g[a+4>>2],+g[a+6232>>2]+ +g[a+5408>>2]*2.0);si(d,0);Tk(2,0.0);Ze(d,0.0,0.0);Uk(4,d);if(ti(9471,0,1295)|0?Dq()|0:0){e=(c[a+6436>>2]|0)+344|0;g[e>>2]=+g[a+5484>>2]+ +g[e>>2];a=1}else{cj();Wk(2);a=0}l=b;return a|0}function Dq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0,m=0.0,n=0.0;j=l;l=l+48|0;d=j+24|0;e=j+8|0;h=j;i=Zi()|0;do if((a[i+149>>0]|0)==0?(c[i+8>>2]&1024|0)!=0:0){f=i+340|0;if(!(a[f>>0]|0)){Xo();go(9514);Al(d,i);k=+g[d>>2];n=+bf(k+.5);b=d+4|0;m=+bf(+g[b>>2]+ +g[i+96>>2]+.5);k=+bf(+pg(k,+g[d+8>>2]-+g[i+92>>2])+.5);rl(e,n,m,k,+bf(+g[d+12>>2]+.5));Cj(e,i+500|0);Yi(e,e+8|0,0);Ze(h,+g[d>>2]+ +g[i+344>>2],+g[b>>2]);e=h;h=c[e+4>>2]|0;b=i+220|0;c[b>>2]=c[e>>2];c[b+4>>2]=h;c[i+364>>2]=1;b=i+324|0;c[b>>2]=(c[b>>2]|0)+1;b=i+328|0;c[b>>2]=c[b>>2]<<1;a[f>>0]=1;Mn();b=1;break}else Bb(9485,5025,11049,34569)}else b=0;while(0);l=j;return b|0}function Eq(){var a=0,b=0;Fq();b=c[11106]|0;a=c[b+6436>>2]|0;if((a|0)==(c[b+6664>>2]|0)?(c[b+6740>>2]|0)==0:0)oi(a);cj();Wk(2);return}function Fq(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0.0;j=l;l=l+16|0;h=j;i=Zi()|0;do if(!(a[i+149>>0]|0)){f=c[11106]|0;do if((Gq()|0?(c[f+6784>>2]|0)>>>0<2:0)?(b=c[f+6664>>2]|0,c[b+8>>2]&268435456|0):0){while(1){d=c[b+620>>2]|0;if(!d)break;if(!(c[d+8>>2]&268435456))break;else b=d}if(((d|0)==(i|0)?(c[b+368>>2]|0)==1:0)?(e=f+6780|0,(c[e>>2]|0)==0):0)if(!(c[i+336>>2]&2))Bb(9524,5025,11086,34582);else{dj(i);Hq(c[i+648>>2]|0,1,i+668|0);c[f+6740>>2]=1;a[f+6750>>0]=1;c[e>>2]=1;lo();break}}while(0);if(!(c[i+8>>2]&1024))Bb(9565,5025,11096,34582);b=i+340|0;if(!(a[b>>0]|0))Bb(9606,5025,11097,34582);else{aj();Zn();k=+g[i+220>>2];Al(h,i);g[i+344>>2]=k-+g[h>>2];a[(Iq(i+420|0)|0)+37>>0]=0;Yo();c[i+364>>2]=0;h=i+324|0;c[h>>2]=(c[h>>2]|0)+-1;i=i+328|0;c[i>>2]=c[i>>2]>>1;a[b>>0]=0;break}}while(0);l=j;return}function Gq(){var b=0;b=c[11106]|0;if((a[b+6777>>0]|0)!=0?(c[b+6792>>2]|0)==0:0)b=(c[b+6832>>2]|0)==0;else b=0;return b|0}function Hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[11106]|0;Kh(b,d);d=(c[f+6664>>2]|0)+652+(d<<4)|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];a[f+6749>>0]=1;a[f+6750>>0]=0;a[f+6751>>0]=1;return}function Iq(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*40|0)|0;else Bb(39063,39072,1128,14585);return 0}function Jq(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;I=l;l=l+80|0;D=I+16|0;i=I+72|0;H=I+8|0;o=I;k=I+64|0;p=I+56|0;y=I+48|0;z=I+40|0;A=I+32|0;C=Zi()|0;if(!(a[C+149>>0]|0)){E=c[11106]|0;F=Eg(C,b,0)|0;tj(i,b,0,1,-1.0);h=xk(F)|0;G=C+8|0;if((c[G>>2]&67108864|0)==0?(e=E+6540|0,f=c[E+6552>>2]|0,(c[e>>2]|0)>(f|0)):0){s=c[(Uj(e,f)|0)+16>>2]|0;s=(s|0)==(c[(Rg(C+472|0)|0)>>2]|0);f=E+6664|0;e=c[f>>2]|0;if(s){c[f>>2]=C;q=f;s=1}else{q=f;s=0}}else{q=E+6664|0;e=c[q>>2]|0;s=0}Xe(H);f=C+220|0;J=f;K=c[J>>2]|0;J=c[J+4>>2]|0;r=o;c[r>>2]=K;c[r+4>>2]=J;r=C+364|0;m=(c[j>>2]=K,+g[j>>2]);n=(c[j>>2]=J,+g[j>>2]);do if((c[r>>2]|0)==1){m=m-+g[C+84>>2];n=n-+g[E+5408>>2];Ze(D,m,n+ +gl(C));p=D;J=c[p+4>>2]|0;K=H;c[K>>2]=c[p>>2];c[K+4>>2]=J;K=E+5420|0;g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*.5)|0);af(D,K,2.0);Uk(13,D);Ze(D,+g[i>>2],0.0);i=rq(b,h,d?9:41,D)|0;Wk(1);g[f>>2]=+g[f>>2]+ +(~~(+g[K>>2]*-.5)|0);f=i&1;if(d)t=14;else{o=f;p=0}}else{Ze(D,m,n-+g[E+5360>>2]);J=D;K=c[J+4>>2]|0;f=H;c[f>>2]=c[J>>2];c[f+4>>2]=K;f=E+6228|0;n=+og(C+540|0,+g[i>>2],0.0,+(~~(+g[f>>2]*1.2000000476837158)|0));bm(k);m=+pg(0.0,+g[k>>2]-n);Ze(D,n,0.0);k=rq(b,h,d?73:105,D)|0;if(!d)Sk(0,E+5520|0);Ze(y,m+ +g[C+564>>2]+ +g[f>>2]*.30000001192092896,0.0);nf(p,o,y);c[D>>2]=c[p>>2];c[D+4>>2]=c[p+4>>2];wj(D,1,1.0);if(d){i=k;f=k&1;t=14;break}else{Xk(1);i=k;o=k&1;p=0;break}}while(0);if((t|0)==14){o=f;p=kh(C+288|0,F)|0}if(s)c[q>>2]=e;if(c[r>>2]|0){e=s&(h&i);if(!(i|e))if(h|s&p^1)if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==3:0){lo();f=0;e=1}else{f=0;e=0}else{h=0;f=0;e=1}else{h=h^e;f=e;e=e^1}}else{k=E+6440|0;if(((((c[k>>2]|0)==(C|0)?(u=E+6540|0,v=E+6552|0,w=c[v>>2]|0,(c[u>>2]|0)>(w|0)):0)?(c[(Uj(u,w)|0)+8>>2]|0)==(C|0):0)?(c[G>>2]&1024|0)==0:0)?(x=c[(Uj(u,c[v>>2]|0)|0)+4>>2]|0,(x|0)!=0):0){xl(D,x);f=E+208|0;lf(y,f,E+892|0);i=C+20|0;e=x+20|0;if(+g[i>>2]<+g[e>>2])Kq(z,D);else Ol(z,D);if(+g[i>>2]<+g[e>>2])Bl(A,D);else Cl(A,D);n=+g[y>>2];m=+gi(+B(+(n-+g[z>>2]))*.30000001192092896,5.0,30.0);g[y>>2]=n+(+g[i>>2]<+g[e>>2]?-.5:.5);n=+g[y+4>>2];e=z+4|0;g[e>>2]=n+ +pg(+g[e>>2]-m-n,-100.0);e=A+4|0;g[e>>2]=n+ +sf(m+ +g[e>>2]-n,100.0);e=of(y,z,A,f)|0}else e=0;i=h^1;if(!(p|i)?(c[k>>2]|0)==(C|0):0){f=c[E+6456>>2]|0;f=(e|((f|0)==0|(f|0)==(F|0)))^1}else f=0;e=(h|p^1|e)^1;K=(c[E+6672>>2]|0)==(F|0);e=K?i&1:h|e?e&1:p?o:0;f=K?h:f;if(((c[E+6668>>2]|0)==(F|0)?(a[E+6777>>0]|0)!=0:0)?(c[E+6784>>2]|0)==1:0){lo();e=1}e=(e&1)!=0}if(f|d^1?xk(F)|0:0)vk(c[(c[11106]|0)+6552>>2]|0);if(!(h|e^1)?(c[E+6540>>2]|0)>(c[E+6552>>2]|0):0){uk(b);e=0}else{if(e)uk(b);if(h|e){Ze(D,0.0,0.0);Fk(H,1,D);e=zk(F,c[G>>2]&335544320|0?285212993:268435777)|0}else e=0}}else e=0;l=I;return e|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function Lq(){var a=0,b=0,d=0;a=c[11106]|0;b=c[a+6436>>2]|0;d=c[a+6664>>2]|0;if((((d|0?(c[d+620>>2]|0)==(b|0):0)?(c[a+6784>>2]|0)==0:0)?Gq()|0:0)?(c[b+364>>2]|0)==0:0){vk((c[a+6540>>2]|0)+-1|0);lo()}Bk();return}function Mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=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.0;z=l;l=l+160|0;p=z+144|0;y=z+64|0;x=z+16|0;m=z+8|0;n=z+128|0;o=z;k=c[11106]|0;s=~~(+Kf(+g[b>>2])*255.0+.5);q=b+4|0;t=~~(+Kf(+g[q>>2])*255.0+.5);r=b+8|0;u=~~(+Kf(+g[r>>2])*255.0+.5);v=(d&2|0)!=0;if(v)w=255;else w=~~(+Kf(+g[b+12>>2])*255.0+.5);jk(0,1);if(a|0?(j=nj(a,0)|0,j>>>0>a>>>0):0){En(a,j);Nq()}i=+g[k+6228>>2]*3.0+ +g[k+5408>>2]*2.0;Ze(m,i,i);a=b+12|0;If(n,+g[b>>2],+g[q>>2],+g[r>>2],+g[a>>2]);j=m;k=c[j+4>>2]|0;m=o;c[m>>2]=c[j>>2];c[m+4>>2]=k;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];Oq(9634,n,d&3074|64,p)|0;ah(0.0,-1.0);i=+g[b>>2];f=+g[q>>2];e=+g[r>>2];if(v){c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=u;c[x+12>>2]=s;c[x+16>>2]=t;c[x+20>>2]=u;h[x+24>>3]=i;h[x+32>>3]=f;h[x+40>>3]=e;Fn(9644,x)}else{A=+g[a>>2];c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=u;c[y+12>>2]=w;c[y+16>>2]=s;c[y+20>>2]=t;c[y+24>>2]=u;c[y+28>>2]=w;h[y+32>>3]=i;h[y+40>>3]=f;h[y+48>>3]=e;h[y+56>>3]=A;Fn(9697,y)}nk();l=z;return}function Nq(){var b=0,d=0.0,e=0,f=0.0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;h=n+16|0;i=n+8|0;j=n;k=Zi()|0;do if(!(a[k+149>>0]|0)){m=c[11106]|0;b=(c[k+364>>2]|0)==1?2:1;if(!(lq(b)|0))Bb(10425,5025,12045,33131);if(b&2|0){hr();break}e=k+468|0;if(c[e>>2]|0)aj();d=+g[k+20>>2];f=d+ +g[k+28>>2];if(!(ir(k+420|0)|0))d=d+ +g[k+456>>2];b=k+224|0;Ze(i,d,+g[b>>2]);Ze(j,f,+g[b>>2]+1.0);Yg(h,i,j);Ze(i,0.0,0.0);$g(i,0.0);if(dh(h,0,0)|0){k=c[k+616>>2]|0;Ze(i,+g[h+8>>2],+g[h+4>>2]);Fw(k,h,i,Lf(27,1.0)|0,1.0);if(a[m+10628>>0]|0)qj(0,10520,0);if(c[e>>2]|0){sq(-1);c[(c[e>>2]|0)+36>>2]=c[b>>2]}}else if(c[e>>2]|0)sq(-1)}while(0);l=n;return}function Oq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0.0,j=0.0,k=0.0,m=0.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,H=0,I=0;I=l;l=l+176|0;o=I+152|0;G=I+144|0;H=I+136|0;B=I+48|0;C=I+161|0;n=I+160|0;D=I+104|0;E=I+16|0;F=I+128|0;p=I+64|0;q=I+120|0;r=I+80|0;s=I+40|0;t=I+32|0;u=I+96|0;v=I+8|0;w=I;x=I+72|0;y=Zi()|0;if(!(a[y+149>>0]|0)){z=c[11106]|0;A=Eg(y,b,0)|0;k=+dn();i=+g[f>>2];if(i==0.0){g[f>>2]=k;i=k}h=f+4|0;j=+g[h>>2];if(j==0.0){g[h>>2]=k;m=k}else m=j;h=y+220|0;nf(o,h,f);Yg(B,h,o);if(!(m>=k))j=0.0;else j=+g[z+5408>>2];bh(B,j);if(dh(B,A,0)|0){h=Ml(B,A,C,n,0)|0;f=(e&2|0)==0?e:e&-3073;If(D,+g[d>>2],+g[d+4>>2],+g[d+8>>2],1.0);i=+sf(i,m)/2.990000009536743;j=+sf(+g[z+5412>>2],i*.5);c[E>>2]=c[B>>2];c[E+4>>2]=c[B+4>>2];c[E+8>>2]=c[B+8>>2];c[E+12>>2]=c[B+12>>2];yl(E,-.75);if((f&2048|0)!=0?+g[d+12>>2]<1.0:0){k=+g[E>>2];s=E+8|0;m=+(~~((k+ +g[s>>2])*.5+.5)|0);Ze(F,i+k,+g[E+4>>2]);t=c[s+4>>2]|0;u=p;c[u>>2]=c[s>>2];c[u+4>>2]=t;u=Mf(d)|0;Ze(q,-.75-i,-.75);c[H>>2]=c[F>>2];c[H+4>>2]=c[F+4>>2];c[G>>2]=c[p>>2];c[G+4>>2]=c[p+4>>2];c[o>>2]=c[q>>2];c[o+4>>2]=c[q+4>>2];Pq(H,G,u,i,o,j,10);H=c[y+616>>2]|0;Ze(o,m,+g[E+12>>2]);Hw(H,E,o,Mf(D)|0,j,5)}else{F=f&1024|0?d:D;c[r>>2]=c[F>>2];c[r+4>>2]=c[F+4>>2];c[r+8>>2]=c[F+8>>2];c[r+12>>2]=c[F+12>>2];if(+g[r+12>>2]<1.0){q=E;F=c[q+4>>2]|0;D=s;c[D>>2]=c[q>>2];c[D+4>>2]=F;D=E+8|0;E=c[D+4>>2]|0;F=t;c[F>>2]=c[D>>2];c[F+4>>2]=E;F=Mf(r)|0;Ze(u,-.75,-.75);c[H>>2]=c[s>>2];c[H+4>>2]=c[s+4>>2];c[G>>2]=c[t>>2];c[G+4>>2]=c[t+4>>2];c[o>>2]=c[u>>2];c[o+4>>2]=c[u+4>>2];Pq(H,G,F,i,o,j,-1)}else{H=c[y+616>>2]|0;Hw(H,E,E+8|0,Mf(r)|0,j,15)}}Bj(B,A,1);if(+g[z+5416>>2]>0.0){H=B;F=c[H+4>>2]|0;E=v;c[E>>2]=c[H>>2];c[E+4>>2]=F;E=B+8|0;F=c[E+4>>2]|0;H=w;c[H>>2]=c[E>>2];c[H+4>>2]=F;c[G>>2]=c[v>>2];c[G+4>>2]=c[v+4>>2];c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];vj(G,o,j)}else{H=c[y+616>>2]|0;Gw(H,B,B+8|0,Lf(7,1.0)|0,j,15,1.0)}if((c[z+6464>>2]|0)==(A|0)?Sq(0,0)|0:0){if(!(f&2))Tq(9961,d,16,2)|0;else Tq(9954,d,12,2)|0;Ze(x,0.0,0.0);c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];Oq(b,d,f,o)|0;ah(0.0,-1.0);En(9968,0);Uq();a[C>>0]=0}if(!((f&64|0)!=0|(a[C>>0]|0)==0))Mq(b,d,f&3074)}else h=0}else h=0;l=I;return h|0}function Pq(a,b,d,e,f,h,i){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=+h;i=i|0;var j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0;E=l;l=l+16|0;C=E+8|0;D=E;j=Zi()|0;a:do if(d>>>0<4278190080){w=Of(Qq(-3355444,d)|0)|0;y=Of(Qq(-8355712,d)|0)|0;v=j+616|0;Hw(c[v>>2]|0,a,b,w,h,i);w=a+4|0;n=+g[w>>2];k=n+ +g[f+4>>2];x=b+4|0;m=+g[x>>2];if(k>2];u=e*2.0;j=0;while(1){s=+gi(k,n,m);k=k+e;r=+sf(k,m);b:do if(!(r<=s)?(z=+g[a>>2],A=+(j&1|0)*e+(z+t),B=+g[b>>2],A>2]){d=p<=o&1;if(q>=n)d=d|2}else d=0;if(r>=+g[x>>2]){d=!(p<=o)?d:d|4;if(q>=n)d=d|8}f=d&i;d=c[v>>2]|0;Ze(C,p,s);Ze(D,q,r);Hw(d,C,D,y,f|0?h:0.0,f);n=+g[b>>2]}m=u+m;if(!(m>2]}}while(0);m=+g[x>>2];if(!(k>2]}}}else Hw(c[j+616>>2]|0,a,b,d,h,i);while(0);l=E;return}function Qq(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;c=+(b>>>24>>>0)/255.0;e=zu(a&255,b&255,c)|0;d=zu(a>>>8&255,b>>>8&255,c)|0;return e|d<<8|(zu(a>>>16&255,b>>>16&255,c)|0)<<16|-16777216|0}function Rq(a){a=a|0;var b=0;b=c[11106]|0;a=(a&57344|0)==0?a|8192:a;a=(a&196608|0)==0?a|65536:a;a=(a&786432|0)==0?a|262144:a;if(!(lq(a&57344)|0))Bb(9763,5025,11335,34307);if(!(lq(a&196608)|0))Bb(9826,5025,11336,34307);if(lq(a&786432)|0){c[b+10516>>2]=a;return}else Bb(9891,5025,11337,34307)}function Sq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;j=o+16|0;k=o;m=c[11106]|0;h=c[m+6436>>2]|0;do if(!(b&16)){i=h+280|0;f=c[i>>2]|0;e=(f|0)==0;if(!e?(c[m+6464>>2]|0)!=(f|0):0){e=0;break}if(a[m+216+d>>0]|0){if(e){if(!(b&8))Bb(18388,5025,12745,34848);f=c[h+284>>2]&1;g=f&255;if(f){f=Vg(h,h+288|0)|0;c[i>>2]=f;_g(f);if(a[m+968+d>>0]|0){Wg(f,h);dj(h)}}else{if(!(c[m+6464>>2]|0)){e=0;break}if((c[m+6492>>2]|0)!=(h|0)){e=0;break}f=Vg(h,h+288|0)|0;c[i>>2]=f}e=c[m+6464>>2]|0;if((e|0)==(f|0)){a[m+6478>>0]=g;e=f}else n=17}else{e=c[m+6464>>2]|0;n=17}if((n|0)==17)if((e|0)!=(f|0)){e=0;break}f=c[(Rg(h+472|0)|0)>>2]|0;if(Rj(d,-1.0)|0){g=f;n=20}else e=0}else e=0}else{h=0;g=0;e=Af(10799,0,0)|0;n=20}while(0);if((n|0)==20){f=m+7040|0;do if(!(a[f>>0]|0))if(!e)Bb(10813,5025,12783,34848);else{Yh();c[m+7060>>2]=e;c[m+7064>>2]=g;a[f>>0]=1;c[m+7044>>2]=b;c[m+7048>>2]=d;break}while(0);if(!(b&1)){Ze(j,0.0,0.0);Fk(m+208|0,0,j);n=Nf(4)|0;If(k,1.0,1.0,1.0,.6000000238418579);Nr(j,n,k);Sk(4,j);pk()}if(!(b&18)){e=h+284|0;c[e>>2]=c[e>>2]&-2;e=1}else e=1}l=o;return e|0}function Tq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[11106]|0;h=i+7052|0;e=(e|0)==0?1:e;if(!a)Bb(10845,5025,12836,34868);if((v9(a)|0)>>>0>=13)Bb(10856,5025,12837,34868);g=(d|0)!=0;if(!((b|0)!=0&g)?!((b|0)==0&(d|0)==0):0)Bb(10983,5025,12838,34868);if((e+-1|0)>>>0>=2)Bb(11047,5025,12839,34868);if(!(c[i+7060>>2]|0))Bb(11098,5025,12840,34868);if(!((e|0)!=1?(f=i+7068|0,(c[f>>2]|0)!=-1):0)){tf(i+7072|0,a,13);f=i+7124|0;Or(f,0);do if(d>>>0<=8)if(g){g=i+7136|0;a=g;c[a>>2]=0;c[a+4>>2]=0;c[h>>2]=g;qca(g|0,b|0,d|0)|0;break}else{c[h>>2]=0;break}else{Or(f,d);g=c[i+7132>>2]|0;c[h>>2]=g;qca(g|0,b|0,d|0)|0}while(0);c[i+7056>>2]=d;f=i+7068|0}h=c[i+6372>>2]|0;c[f>>2]=h;i=c[i+7120>>2]|0;return (i|0)==(h|0)|(i|0)==(h+-1|0)|0}function Uq(){var b=0;b=c[11106]|0;if(!(a[b+7040>>0]|0))Bb(10828,5025,12814,34887);if(!(c[b+7044>>2]&1)){nk();Xk(1)}if((c[b+7068>>2]|0)==-1)Yh();return}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;return Wq(a,b,c|2)|0}function Wq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,k=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.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;Z=l;l=l+224|0;D=Z+152|0;A=Z+48|0;B=Z+32|0;y=Z+16|0;x=Z;T=Z+136|0;U=Z+120|0;w=Z+112|0;F=Z+96|0;G=Z+88|0;H=Z+80|0;I=Z+72|0;E=Z+64|0;W=Zi()|0;if(!(a[W+149>>0]|0)){X=c[11106]|0;J=+dn();if(!(e&16))k=J+ +g[X+5428>>2];else k=0.0;v=+Zl()-k;L=nj(b,0)|0;V=e&2;S=(V|0)==0;z=(e&4096|0)!=0;V=4-(V>>>1)|0;Xo();go(b);f=(e&32|0)==0?e:e&-57353|8200;if(!(f&8))Xq(d,f);if(!(f&57344))f=c[X+10516>>2]&57344|f;if(!(f&196608))f=c[X+10516>>2]&196608|f;K=c[X+10516>>2]|0;K=K&-1040385|(f|((f&786432|0)==0?K&786432:0));u=c[d>>2]|0;c[T>>2]=u;M=T+4|0;N=d+4|0;C=c[N>>2]|0;c[M>>2]=C;O=T+8|0;P=d+8|0;R=c[P>>2]|0;c[O>>2]=R;Q=T+12|0;k=(c[j>>2]=u,+g[j>>2]);o=(c[j>>2]=C,+g[j>>2]);r=(c[j>>2]=R,+g[j>>2]);if(S)s=+g[d+12>>2];else s=1.0;g[Q>>2]=s;i=f&16384;R=(i|0)!=0;if(R){Pf(k,o,r,T,M,O);k=+g[T>>2];o=+g[M>>2];r=+g[O>>2];s=+g[Q>>2]}h=~~(k*255.0+(k>=0.0?.5:-.5));c[U>>2]=h;u=U+4|0;n=~~(o*255.0+(o>=0.0?.5:-.5));c[u>>2]=n;t=U+8|0;p=~~(r*255.0+(r>=0.0?.5:-.5));c[t>>2]=p;q=U+12|0;m=~~(s*255.0+(s>=0.0?.5:-.5));c[q>>2]=m;C=(K&32|0)==0;if(!((f&24576|0)!=0&C))if((f&32768|0)!=0&C){i=Fj(h,0,255)|0;h=Fj(n,0,255)|0;f=Fj(p,0,255)|0;if(S){z=Fj(m,0,255)|0;c[x>>2]=i;c[x+4>>2]=h;c[x+8>>2]=f;c[x+12>>2]=z;yf(D,64,10253,x)|0}else{c[y>>2]=i;c[y+4>>2]=h;c[y+8>>2]=f;yf(D,64,10271,y)|0}eg(v);do if(fg(10285,D,64,6,0,0)|0){f=D;while(1){h=a[f>>0]|0;if(h<<24>>24!=35?!(Yq(h<<24>>24)|0):0)break;f=f+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;c[U+12>>2]=0;if(S){c[B>>2]=U;c[B+4>>2]=u;c[B+8>>2]=t;c[B+12>>2]=q;Raa(f,10292,B)|0;f=1;break}else{c[A>>2]=U;c[A+4>>2]=u;c[A+8>>2]=t;Raa(f,10309,A)|0;f=1;break}}else f=0;while(0);if(!(K&8))Hk(9974,1)|0;gg();i=0}else{i=0;f=0}else{u=X+5428|0;r=+g[u>>2];o=+(V+-1|0);s=+pg(1.0,+(~~((v-r*o)/+(V|0))|0));o=+pg(1.0,+(~~(v-(r+s)*o)|0));t=(f&131072|0)!=0;tj(w,t?10099:10107,0,0,-1.0);p=!(s<=+g[w>>2])?(i>>>14)+1|0:0;eg(s);if(!V){h=0;f=0}else{k=z?0.0:1.0;q=(K&8|0)==0;n=z?0:255;h=0;m=0;f=0;do{if((m|0)>0)ah(0.0,+g[u>>2]);i=m;m=m+1|0;if((m|0)==(V|0))eg(o);if(t){f=((fp(c[1112+(i<<2)>>2]|0,T+(i<<2)|0,.003921568859368563,0.0,k,c[1176+(p<<4)+(i<<2)>>2]|0,1.0)|0)&1|h&1)&255;h=f}else h=((lp(c[1112+(i<<2)>>2]|0,U+(i<<2)|0,1.0,0,n,c[1128+(p<<4)+(i<<2)>>2]|0)|0)&1|h&1)&255;if(q)Hk(9974,1)|0}while((m|0)!=(V|0))}gg();gg();i=(f&1)!=0;f=(h&1)!=0}if(!(K&16)){if(C)ah(0.0,+g[X+5428>>2]);if(S)k=+g[d+12>>2];else k=1.0;If(F,+g[d>>2],+g[N>>2],+g[P>>2],k);Ze(G,0.0,0.0);c[D>>2]=c[G>>2];c[D+4>>2]=c[G+4>>2];if((K&4|0)==0&(Oq(10322,F,K,D)|0)){G=X+10520|0;c[G>>2]=c[F>>2];c[G+4>>2]=c[F+4>>2];c[G+8>>2]=c[F+8>>2];c[G+12>>2]=c[F+12>>2];uk(10336);Bl(H,W+288|0);Ze(I,-1.0,+g[X+5424>>2]);nf(D,H,I);Ze(E,0.0,0.0);Fk(D,0,E)}if(!(K&8))Hk(9974,1)|0;if(Ck(10336,0)|0){h=c[X+6436>>2]|0;if((L|0)!=(b|0)){En(b,L);Nq()}eg(J*12.0);f=f|(Zq(10343,d,e&987650|59520,X+10520|0)|0);gg();Bk()}else h=0;n=h}else n=0;if((L|0)!=(b|0)&(K&128|0)==0){ah(0.0,+g[X+5428>>2]);En(b,L)}m=(n|0)==0;if(m){if(!i){h=0;do{g[T+(h<<2)>>2]=+(c[U+(h<<2)>>2]|0)/255.0;h=h+1|0}while((h|0)!=4)}if(R)Rf(+g[T>>2],+g[M>>2],+g[O>>2],T,M,O);if(f?(c[d>>2]=c[T>>2],c[N>>2]=c[M>>2],c[P>>2]=c[O>>2],S):0)c[d+12>>2]=c[Q>>2]}Zn();Yo();if((c[W+284>>2]&1|0)!=0?_q()|0:0){h=$q(9954,0)|0;if(h){i=d;f=c[h>>2]|0;h=i+12|0;do{a[i>>0]=a[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(h|0));f=1}h=$q(9961,0)|0;if(h){qca(d|0,c[h>>2]|0,V<<2|0)|0;f=1}ar()}if((!m?(Y=c[X+6464>>2]|0,Y|0):0)?(c[X+6492>>2]|0)==(n|0):0)c[W+280>>2]=Y}else f=0;l=Z;return f|0}function Xq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+144|0;u=w+64|0;t=w+48|0;v=w+32|0;s=w;q=w+80|0;e=(b&57344|0)==0;f=(b&196608|0)==0;if(e|f?Ck(9974,0)|0:0){r=(c[11106]|0)+10516|0;d=c[r>>2]|0;if(e){n=zp(9982,(d&8192|0)!=0)|0;p=d&-57345;d=n?p|8192:d;n=zp(9986,(d&16384|0)!=0)|0;d=n?p|16384:d;p=zp(9990,(d&32768|0)!=0)|0;d=p?d&-57345|32768:d}if(f){if(e)Nq();n=zp(9994,(d&65536|0)!=0)|0;p=d&-196609;d=n?p|65536:d;n=zp(10001,(d&131072|0)!=0)|0;d=n?p|131072:d}Nq();Ze(q,-1.0,0.0);if(Rn(10012,q)|0)uk(39631);if(Ck(39631,0)|0){j=+g[a>>2];k=~~(+Kf(j)*255.0+.5);m=+g[a+4>>2];n=~~(+Kf(m)*255.0+.5);o=+g[a+8>>2];p=~~(+Kf(o)*255.0+.5);b=(b&2|0)!=0;if(b){i=1.0;e=q;f=255}else{f=~~(+Kf(+g[a+12>>2])*255.0+.5);i=+g[a+12>>2];e=q}h[s>>3]=j;h[s+8>>3]=m;h[s+16>>3]=o;h[s+24>>3]=i;yf(e,64,10022,s)|0;Ze(s,0.0,0.0);if(rq(e,0,0,s)|0)th(e);c[v>>2]=k;c[v+4>>2]=n;c[v+8>>2]=p;c[v+12>>2]=f;yf(e,64,10051,v)|0;Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);if(b){c[t>>2]=k;c[t+4>>2]=n;c[t+8>>2]=p;yf(e,64,10065,t)|0}else{c[u>>2]=k;c[u+4>>2]=n;c[u+8>>2]=p;c[u+12>>2]=f;yf(e,64,10080,u)|0}Ze(v,0.0,0.0);if(rq(e,0,0,v)|0)th(e);Bk()}c[r>>2]=d;Bk()}l=w;return}function Yq(a){a=a|0;var b=0;a:do if((a|0)>=32)if((a|0)<12288)switch(a|0){case 32:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 12288:{a=1;break a}default:{b=2;break a}}else switch(a|0){case 9:{a=1;break}default:b=2}while(0);if((b|0)==2)a=0;return a|0}function Zq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0.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,G=0,H=0,I=0.0,J=0,L=0,M=0,N=0.0,O=0.0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;za=l;l=l+352|0;ma=za+328|0;la=za+312|0;ya=za+128|0;w=za+120|0;u=za+112|0;M=za+96|0;xa=za+280|0;ba=za+272|0;ca=za+264|0;da=za+256|0;ga=za+248|0;G=za+232|0;W=za+216|0;X=za+200|0;H=za+40|0;na=za+24|0;oa=za+8|0;v=za+304|0;x=za+296|0;Y=za+104|0;Z=za+88|0;_=za+152|0;$=za;aa=za+144|0;J=za+80|0;L=za+240|0;P=za+224|0;Q=za+208|0;R=za+192|0;S=za+184|0;pa=za+72|0;qa=za+64|0;ra=za+176|0;sa=za+56|0;ta=za+32|0;ua=za+168|0;va=za+160|0;q=c[11106]|0;k=Zi()|0;wa=c[k+616>>2]|0;go(a);Xo();f=d>>>4&16^16|d;if(!(d&8))cr(f,b);if(!(d&786432)){ka=c[q+10516>>2]&786432;f=((ka|0)==0?262144:ka)|f}if(!(lq(f&786432)|0))Bb(9891,5025,11764,34282);if(!(f&8))f=c[q+10516>>2]&512|f;ja=f&2;t=(ja|0)!=0;ka=(f&512|0)!=0&(t^1);z=k+220|0;V=c[z>>2]|0;z=c[z+4>>2]|0;p=M;c[p>>2]=V;c[p+4>>2]=z;ea=+dn();fa=+Zl();p=q+5428|0;ha=+g[p>>2];fa=+pg(ea,fa-(ka?2.0:1.0)*(ea+ha));n=(c[j>>2]=V,+g[j>>2]);N=ha+(fa+n);O=ea+N;ha=ha+O;ia=+(~~(ea*.20000000298023224)|0);ja=4-(ja>>>1)<<2;qca(xa|0,b|0,ja|0)|0;U=fa*.07999999821186066;I=fa*.5;T=I-U;V=M+4|0;Ze(ba,(ea+fa)*.5+n,I+(c[j>>2]=z,+g[j>>2]));n=T-+(~~(fa*.027000000700354576)|0);Ze(ca,n,0.0);i=n*-.5;Ze(da,i,n*-.8660249710083008);Ze(ga,i,n*.8660249710083008);z=b+4|0;A=b+8|0;Pf(+g[b>>2],+g[z>>2],+g[A>>2],G,W,X);im(8,1);D=(f&524288|0)!=0;if(D){Ze(ma,ea+(fa+ +g[p>>2]),fa);Tn(10352,ma)|0;if($j()|0){lf(ma,q+908|0,ba);lf(la,q+208|0,ba);h=+rf(ma);n=T+-1.0;if(h>=n*n?(n=I+1.0,h<=n*n):0){n=+K(+(+g[la+4>>2]),+(+g[la>>2]))/3.1415927410125732*.5;g[G>>2]=n<0.0?n+1.0:n;k=1}else k=0;i=+g[G>>2]*-2.0*3.1415927410125732;h=+E(+i);i=+F(+i);dr(ya,ma,h,i);if(of(ca,da,ga,ya)|0){dr(ya,la,h,i);if(!(of(ca,da,ga,ya)|0)){qf(H,ca,da,ga,ya);o=H;y=c[o+4>>2]|0;C=ya;c[C>>2]=c[o>>2];c[C+4>>2]=y}pf(ca,da,ga,ya,H,na,oa);n=+gi(1.0-+g[na>>2],9.999999747378752e-05,1.0);g[X>>2]=n;g[W>>2]=+gi(+g[H>>2]/n,9.999999747378752e-05,1.0);d=1;m=1}else{d=0;m=k}}else{k=0;d=0;m=0}o=(d&1)!=0;k=(k&1)!=0;d=(m&1)!=0;if(!(f&8)){Hk(9974,1)|0;y=k;C=o}else{y=k;C=o}}else if(f&262144){Ze(ma,fa,fa);Tn(10356,ma)|0;if($j()|0){n=fa+-1.0;g[W>>2]=+Kf((+g[q+208>>2]-+g[M>>2])/n);g[X>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/n);k=1;d=1}else{k=0;d=0}if(!(f&8))Hk(9974,1)|0;Ze(ma,N,+g[V>>2]);sn(ma);Ze(ma,ea,fa);Tn(10359,ma)|0;k=k<<24>>24!=0;if($j()|0){g[G>>2]=+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));y=1;C=k;d=1}else{y=0;C=k}}else{y=0;C=0;d=0}if(ka?(Ze(ma,ha,+g[V>>2]),sn(ma),Ze(ma,ea,fa),Tn(10363,ma)|0,$j()|0):0){g[b+12>>2]=1.0-+Kf((+g[q+212>>2]-+g[V>>2])/(fa+-1.0));d=1}jm();k=(f&256|0)!=0;if(!k){ah(0.0,+g[p>>2]);Xo()}m=(f&128|0)!=0;if(!m?(s=nj(a,0)|0,(s|0)!=(a|0)):0){if(k)ah(0.0,+g[p>>2]);En(a,s)}if(!k){im(16,1);if(t)h=1.0;else h=+g[b+12>>2];If(la,+g[b>>2],+g[z>>2],+g[A>>2],h);if(m)Fn(10369,u);k=f&7232;i=ea*3.0;n=ea*2.0;Ze(v,i,n);c[ma>>2]=c[v>>2];c[ma+4>>2]=c[v+4>>2];Oq(10377,la,k,ma)|0;if(e){Fn(10387,w);if(t)h=1.0;else h=+g[e+12>>2];If(ya,+g[e>>2],+g[e+4>>2],+g[e+8>>2],h);Ze(x,i,n);c[ma>>2]=c[x>>2];c[ma+4>>2]=c[x+4>>2];if(Oq(10396,ya,k,ma)|0){qca(b|0,e|0,ja|0)|0;d=1}}jm();Yo()}if(C|y){h=+g[G>>2];i=+g[W>>2];n=+g[X>>2];Rf(h>=1.0?h+-9.999999747378752e-06:h,i>0.0?i:9.999999747378752e-06,n>0.0?n:9.999999974752427e-07,b,z,A)}do if(!(f&32)){eg(ea+(ka?ha:N)-+g[M>>2]);k=f&203802;m=(f&57344|0)==0;if((f&8192|0)!=0|m)d=d|(Wq(10407,b,k|8196)|0);if((f&16384|0)!=0|m)d=d|(Wq(10413,b,k|16388)|0);if((f&32768|0)!=0|m){e=d|(Wq(10419,b,k|32772)|0);gg();if(e){B=61;break}else{s=0;break}}else{gg();if(d){B=61;break}else{s=0;break}}}else if(d)B=61;else s=0;while(0);if((B|0)==61){Pf(+g[b>>2],+g[z>>2],+g[A>>2],ma,la,ya);h=+g[G>>2];do if(+g[ma>>2]<=0.0&h>0.0){i=+g[ya>>2];if(i<=0.0?(r=+g[X>>2],r!=i):0){Rf(h,+g[W>>2],r*.5,b,z,A);break}if(+g[la>>2]<=0.0)Rf(h,+g[W>>2]*.5,i,b,z,A)}while(0);s=1}If(H,1.0,1.0,1.0,1.0);r=+g[G>>2];Rf(r,1.0,1.0,H,H+4|0,H+8|0);q=Jf(H)|0;If(ma,+g[b>>2],+g[z>>2],+g[A>>2],1.0);a=Jf(ma)|0;Xe(na);if(!D){if(f&262144|0){Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,-1,q,q,-1);Ze(la,fa,fa);nf(ma,M,la);Iw(wa,M,ma,0,0,-16777216,-16777216);ga=M;d=c[ga+4>>2]|0;f=J;c[f>>2]=c[ga>>2];c[f+4>>2]=d;Ze(ya,fa,fa);nf(L,M,ya);c[la>>2]=c[J>>2];c[la+4>>2]=c[J+4>>2];c[ma>>2]=c[L>>2];c[ma+4>>2]=c[L+4>>2];vj(la,ma,0.0);i=+g[M>>2];g[na>>2]=+gi(+(~~(i+fa*+Kf(+g[W>>2])+.5)|0),i+2.0,fa+i+-2.0);i=+g[V>>2];g[na+4>>2]=+gi(+(~~(i+fa*+Kf(1.0-+g[X>>2])+.5)|0),i+2.0,fa+i+-2.0);h=fa/6.0;f=0;d=-16776961;do{Ze(ma,N,h*+(f|0)+i);f=f+1|0;Ze(la,O,h*+(f|0)+ +g[V>>2]);ga=d;d=c[1224+(f<<2)>>2]|0;Iw(wa,ma,la,ga,ga,d,d);i=+g[V>>2]}while((f|0)!=6);Ze(P,N,i);Ze(Q,O,fa+ +g[V>>2]);c[la>>2]=c[P>>2];c[la+4>>2]=c[P+4>>2];c[ma>>2]=c[Q>>2];c[ma+4>>2]=c[Q+4>>2];vj(la,ma,0.0);Ze(R,N+-1.0,+(~~(i+fa*r+.5)|0));Ze(S,ia+1.0,ia);c[la>>2]=c[R>>2];c[la+4>>2]=c[R+4>>2];c[ma>>2]=c[S>>2];c[ma+4>>2]=c[S+4>>2];gr(wa,la,ma,ea+2.0)}}else{n=1.5/I;o=sp(4,(~~I|0)/12|0)|0;p=wa+24|0;h=I+T;i=h*.5;d=ba+4|0;k=wa+32|0;f=0;m=-16776961;do{O=+(f|0);N=O/6.0*2.0*3.1415927410125732-n;O=n+(O+1.0)/6.0*2.0*3.1415927410125732;P=c[p>>2]|0;zw(wa,ba,i,N,O,o);Aj(wa,-1,0,U);R=c[p>>2]|0;I=+g[ba>>2]+T*+E(+N);Ze(ya,I,+g[d>>2]+T*+F(+N));N=+g[ba>>2]+T*+E(+O);Ze(oa,N,+g[d>>2]+T*+F(+O));Q=c[k>>2]|0;S=ya;M=c[S+4>>2]|0;L=Y;c[L>>2]=c[S>>2];c[L+4>>2]=M;L=oa;M=c[L+4>>2]|0;S=Z;c[S>>2]=c[L>>2];c[S+4>>2]=M;f=f+1|0;S=m;m=c[1224+(f<<2)>>2]|0;c[la>>2]=c[Y>>2];c[la+4>>2]=c[Y+4>>2];c[ma>>2]=c[Z>>2];c[ma+4>>2]=c[Z+4>>2];$w(Q+(P*20|0)|0,Q+(R*20|0)|0,la,ma,S,m)}while((f|0)!=6);T=r*2.0*3.1415927410125732;O=+E(+T);T=+F(+T);Ze(ma,h*O*.5+ +g[ba>>2],h*T*.5+ +g[d>>2]);U=U*(y?.6499999761581421:.550000011920929);Z=Fj(~~(U/1.399999976158142),9,32)|0;Ow(wa,ma,U,q,Z);Nw(wa,ma,U+1.0,-8355712,Z,1.0);Nw(wa,ma,U,-1,Z,1.0);dr(ya,ca,O,T);nf(la,ba,ya);dr(oa,da,O,T);nf(ya,ba,oa);dr(_,ga,O,T);nf(oa,ba,_);jn(_);ow(wa,6,6);er(wa,la,_,q);er(wa,ya,_,q);er(wa,oa,_,-1);er(wa,la,_,0);er(wa,ya,_,-16777216);er(wa,oa,_,0);Lw(wa,la,ya,oa,-8355712,1.5);fr(aa,oa,la,+Kf(+g[W>>2]));fr($,aa,ya,+Kf(1.0-+g[X>>2]));ca=$;da=c[ca+4>>2]|0;ga=na;c[ga>>2]=c[ca>>2];c[ga+4>>2]=da}U=C?10.0:6.0;Ow(wa,na,U,a,12);Nw(wa,na,U+1.0,-8355712,12,1.0);Nw(wa,na,U,-1,12,1.0);if(ka){U=+Kf(+g[b+12>>2]);T=+g[V>>2];rl(oa,ha,T,ea+ha,fa+T);ga=oa;da=c[ga+4>>2]|0;na=pa;c[na>>2]=c[ga>>2];c[na+4>>2]=da;na=oa+8|0;da=na;ga=c[da+4>>2]|0;ka=qa;c[ka>>2]=c[da>>2];c[ka+4>>2]=ga;T=+Ul(oa)*.5;Ze(ra,0.0,0.0);c[ya>>2]=c[pa>>2];c[ya+4>>2]=c[pa+4>>2];c[la>>2]=c[qa>>2];c[la+4>>2]=c[qa+4>>2];c[ma>>2]=c[ra>>2];c[ma+4>>2]=c[ra+4>>2];Pq(ya,la,0,T,ma,0.0,-1);ya=a&16777215;Iw(wa,oa,na,a,a,ya,ya);fa=+(~~(fa*(1.0-U)+ +g[V>>2]+.5)|0);ya=oa;ra=c[ya+4>>2]|0;qa=sa;c[qa>>2]=c[ya>>2];c[qa+4>>2]=ra;qa=na;ra=c[qa+4>>2]|0;ya=ta;c[ya>>2]=c[qa>>2];c[ya+4>>2]=ra;c[la>>2]=c[sa>>2];c[la+4>>2]=c[sa+4>>2];c[ma>>2]=c[ta>>2];c[ma+4>>2]=c[ta+4>>2];vj(la,ma,0.0);Ze(ua,ha+-1.0,fa);Ze(va,ia+1.0,ia);c[la>>2]=c[ua>>2];c[la+4>>2]=c[ua+4>>2];c[ma>>2]=c[va>>2];c[ma+4>>2]=c[va+4>>2];gr(wa,la,ma,ea+2.0)}Yo();Zn();if(s)f=(r9(xa,b,ja)|0)!=0;else f=0;l=za;return f|0}function _q(){var b=0,d=0,e=0,f=0;f=c[11106]|0;if((((a[f+7040>>0]|0)!=0?(e=c[f+6436>>2]|0,d=c[e+284>>2]|0,(d&1|0)!=0):0)?(b=c[f+6440>>2]|0,(b|0)!=0):0)?(c[e+624>>2]|0)==(c[b+624>>2]|0):0){d=d&2|0?e+304|0:e+288|0;b=c[e+280>>2]|0;if(!b)b=Vg(e,d)|0;if((c[f+7060>>2]|0)!=(b|0)){e=f+7088|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f+7104>>2]=b;b=1}else b=0}else b=0;return b|0} +function r6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;s6();f=t6()|0;h=u6()|0;n=v6()|0;m=w6()|0;k=x6()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,43,g|0,f|0,d|0,h|0,39624,ET()|0,82);h=v6()|0;d=A6(b)|0;f=B6(b)|0;Sb(h|0,d|0,f|0,tQ()|0,44,21);f=v6()|0;d=E6(b)|0;h=F6(b)|0;Sb(f|0,d|0,h|0,G6()|0,1,21);c[b>>2]=0;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=4;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=8;h=v6()|0;d=gV()|0;f=pQ()|0;g=J6(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36073,d|0,f|0,11,g|0,i|0,j|0,7,J6(b)|0);c[b>>2]=12;j=v6()|0;i=gV()|0;g=pQ()|0;f=J6(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36075,i|0,g|0,11,f|0,d|0,h|0,7,J6(b)|0);c[b>>2]=36;h=v6()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=56;g=v6()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function s6(){return}function t6(){return 0}function u6(){return 0}function v6(){return _6()|0}function w6(){return Z6()|0}function x6(){return Y6()|0}function y6(a){a=a|0;return X6(a)|0}function z6(a){a=a|0;if(a|0)hba(a);return}function A6(a){a=a|0;return 1}function B6(a){a=a|0;return W6()|0}function C6(a){a=a|0;return bW(Ad[a&31]()|0)|0}function D6(){var a=0;a=gba(16)|0;Ye(a);return a|0}function E6(a){a=a|0;return 5}function F6(a){a=a|0;return V6()|0}function G6(){return 39643}function H6(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;var f=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;k=f+12|0;j=f+8|0;i=f+4|0;h=f;g[k>>2]=+r4(b);g[j>>2]=+r4(c);g[i>>2]=+r4(d);g[h>>2]=+r4(e);a=bW(Wd[a&31](k,j,i,h)|0)|0;l=f;return a|0}function I6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=gba(16)|0;If(e,+g[a>>2],+g[b>>2],+g[c>>2],+g[d>>2]);return e|0}function J6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function K6(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function L6(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function M6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);PH(e,c,36073);g[f>>2]=+QH(e);vH(b,36073,f);ZG(e);PH(e,c,36075);g[f>>2]=+QH(e);vH(b,36075,f);ZG(e);CZ(a,b);l=d;return}function N6(a){a=a|0;return 3}function O6(a){a=a|0;return U6()|0}function P6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Q6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);te[a&63](h,f,g);d=YG(h)|0;ZG(h);ZG(g);ZG(f);l=e;return d|0}function R6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if((!f?(PH(c,a,36032),g=+QH(c),PH(d,b,36032),f=g!=+QH(d),ZG(d),ZG(c),!f):0)?(PH(c,a,36073),g=+QH(c),PH(d,b,36073),f=g!=+QH(d),ZG(d),ZG(c),!f):0){PH(c,a,36075);g=+QH(c);PH(d,b,36075);a=g==+QH(d);ZG(d);ZG(c)}else a=0;l=e;return a|0}function S6(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function T6(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;oH(f,b);oH(g,d);d=KH(Fd[a&63](f,g)|0)|0;ZG(g);ZG(f);l=e;return d|0}function U6(){return 3864}function V6(){return 3876}function W6(){return 3896}function X6(a){a=a|0;return 48}function Y6(){return 160}function Z6(){return 336}function _6(){return 48}function $6(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;a7();f=b7()|0;h=c7()|0;n=d7()|0;m=e7()|0;k=f7()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,45,g|0,f|0,d|0,h|0,39650,ET()|0,83);h=d7()|0;d=i7(b)|0;f=j7(b)|0;Sb(h|0,d|0,f|0,tQ()|0,46,22);f=d7()|0;d=m7(b)|0;h=n7(b)|0;Sb(f|0,d|0,h|0,o7()|0,2,57);c[b>>2]=0;h=d7()|0;d=gV()|0;f=pQ()|0;g=r7(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,36030,d|0,f|0,12,g|0,i|0,j|0,8,r7(b)|0);c[b>>2]=4;j=d7()|0;i=gV()|0;g=pQ()|0;f=r7(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,36032,i|0,g|0,12,f|0,d|0,h|0,8,r7(b)|0);c[b>>2]=37;h=d7()|0;d=N6(e)|0;f=O6(e)|0;g=nI()|0;Tb(h|0,39631,d|0,f|0,g|0,45,P6(b)|0,0);c[b>>2]=58;g=d7()|0;f=PJ(e)|0;e=QJ(e)|0;d=nI()|0;Tb(g|0,39636,f|0,e|0,d|0,46,S6(b)|0,0);l=a;return}function a7(){return}function b7(){return 0}function c7(){return 0}function d7(){return B7()|0}function e7(){return A7()|0}function f7(){return z7()|0}function g7(a){a=a|0;return y7(a)|0}function h7(a){a=a|0;if(a|0)hba(a);return}function i7(a){a=a|0;return 1}function j7(a){a=a|0;return x7()|0}function k7(a){a=a|0;return kW(Ad[a&31]()|0)|0}function l7(){var a=0;a=gba(8)|0;Xe(a);return a|0}function m7(a){a=a|0;return 3}function n7(a){a=a|0;return w7()|0}function o7(){return 39657}function p7(a,b,c){a=a|0;b=+b;c=+c;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;g[f>>2]=+r4(b);g[e>>2]=+r4(c);a=kW(Fd[a&63](f,e)|0)|0;l=d;return a|0}function q7(a,b){a=a|0;b=b|0;var c=0;c=gba(8)|0;Ze(c,+g[a>>2],+g[b>>2]);return c|0}function r7(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function s7(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function t7(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;PH(e,c,36030);g[f>>2]=+QH(e);vH(b,36030,f);ZG(e);PH(e,c,36032);g[f>>2]=+QH(e);vH(b,36032,f);ZG(e);CZ(a,b);l=d;return}function v7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0;e=l;l=l+16|0;c=e+4|0;d=e;PH(c,a,36030);g=+QH(c);PH(d,b,36030);f=g!=+QH(d);ZG(d);ZG(c);if(f)a=0;else{PH(c,a,36032);g=+QH(c);PH(d,b,36032);a=g==+QH(d);ZG(d);ZG(c)}l=e;return a|0}function w7(){return 3900}function x7(){return 3912}function y7(a){a=a|0;return 56}function z7(){return 400}function A7(){return 352}function B7(){return 56}function C7(a){a=a|0;dC(39662,84);return}function D7(a){a=a|0;var b=0,c=0,d=0;b=l;l=l+48|0;d=b+8|0;c=b;$8(d);LZ(a);xI(c,d);E7(a,39671,c);ZG(c);xI(c,d+4|0);F7(a,39677,c);ZG(c);xI(c,d+8|0);G7(a,39685,c);ZG(c);xI(c,d+12|0);E7(a,39692,c);ZG(c);xI(c,d+16|0);G7(a,39698,c);ZG(c);xI(c,d+20|0);F7(a,39705,c);ZG(c);xI(c,d+24|0);F7(a,39713,c);ZG(c);xI(c,d+28|0);jN(a,39721,c);ZG(c);xI(c,d+32|0);jN(a,39730,c);ZG(c);xI(c,d+36|0);jN(a,39739,c);ZG(c);l=b;return}function E7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function F7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function G7(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function H7(){I7();return}function I7(){J7(0);return}function J7(a){a=a|0;bc(K7()|0,39748);Qb(zV()|0,39753,1,1,0);L7();M7();N7();O7();P7();Q7();R7();S7();T7();U7();V7();$b(W7()|0,39758);$b(X7()|0,39770);ac(Y7()|0,4,39803);Wb(G$()|0,39816);Z7();_7(39832);$7(39869);a8(39908);b8(39939);c8(39979);d8(40008);e8();f8();_7(40046);$7(40078);a8(40111);b8(40144);c8(40178);d8(40211);g8();h8();i8();return}function K7(){return U8()|0}function L7(){Zb(S8()|0,40976,1,-128,127);return}function M7(){Zb(Q8()|0,40964,1,-128,127);return}function N7(){Zb(O8()|0,40950,1,0,255);return}function O7(){Zb(M8()|0,40944,2,-32768,32767);return}function P7(){Zb(w5()|0,40929,2,0,65535);return}function Q7(){Zb(TW()|0,40925,4,-2147483648,2147483647);return}function R7(){Zb(c3()|0,40912,4,0,-1);return}function S7(){Zb(K8()|0,40907,4,-2147483648,2147483647);return}function T7(){Zb(I8()|0,40893,4,0,-1);return}function U7(){Xb(gV()|0,40887,4);return}function V7(){Xb(G8()|0,40880,8);return}function W7(){return F8()|0}function X7(){return E8()|0}function Y7(){return D8()|0}function Z7(){_b(q2()|0,0,40724);return}function _7(a){a=a|0;_b(B8()|0,0,a|0);return}function $7(a){a=a|0;_b(QZ()|0,1,a|0);return}function a8(a){a=a|0;_b(z8()|0,2,a|0);return}function b8(a){a=a|0;_b(x8()|0,3,a|0);return}function c8(a){a=a|0;_b(v8()|0,4,a|0);return}function d8(a){a=a|0;_b(t8()|0,5,a|0);return}function e8(){_b(r8()|0,4,40508);return}function f8(){_b(p8()|0,5,40438);return}function g8(){_b(n8()|0,6,40376);return}function h8(){_b(l8()|0,7,40313);return}function i8(){_b(j8()|0,7,40245);return}function j8(){return k8()|0}function k8(){return 632}function l8(){return m8()|0}function m8(){return 640}function n8(){return o8()|0}function o8(){return 648}function p8(){return q8()|0}function q8(){return 656}function r8(){return s8()|0}function s8(){return 664}function t8(){return u8()|0}function u8(){return 672}function v8(){return w8()|0}function w8(){return 680}function x8(){return y8()|0}function y8(){return 688}function z8(){return A8()|0}function A8(){return 696}function B8(){return C8()|0}function C8(){return 704}function D8(){return 712}function E8(){return 736}function F8(){return 8}function G8(){return H8()|0}function H8(){return 992}function I8(){return J8()|0}function J8(){return 976}function K8(){return L8()|0}function L8(){return 968}function M8(){return N8()|0}function N8(){return 936}function O8(){return P8()|0}function P8(){return 920}function Q8(){return R8()|0}function R8(){return 928}function S8(){return T8()|0}function T8(){return 912}function U8(){return 872}function V8(a){a=a|0;return Maa(c[a+4>>2]|0)|0}function W8(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=l;l=l+16|0;p=x;do if(a>>>0<245){m=a>>>0<11?16:a+11&-8;a=m>>>3;o=c[11388]|0;d=o>>>a;if(d&3|0){b=(d&1^1)+a|0;a=45592+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[11388]=o&~(1<>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}n=c[11390]|0;if(m>>>0>n>>>0){if(d|0){b=2<>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=45592+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=o&~(1<>2]=b;c[a>>2]=d;a=o}w=e<<3;h=w-m|0;c[g+4>>2]=m|3;f=g+m|0;c[f+4>>2]=h|1;c[g+w>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=f;w=i;l=x;return w|0}j=c[11389]|0;if(j){d=(j&0-j)+-1|0;i=d>>>12&16;d=d>>>i;h=d>>>5&8;d=d>>>h;k=d>>>2&4;d=d>>>k;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[45856+((h|i|k|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-m|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){k=a;h=d}else{do{i=(c[e+4>>2]&-8)-m|0;k=i>>>0>>0;d=k?i:d;a=k?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);k=a;h=d}i=k+m|0;if(i>>>0>k>>>0){f=c[k+24>>2]|0;b=c[k+12>>2]|0;do if((b|0)==(k|0)){a=k+20|0;b=c[a>>2]|0;if(!b){a=k+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[k+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[k+28>>2]|0;a=45856+(b<<2)|0;if((k|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[11389]=j&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[k+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[k+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(h>>>0<16){w=h+m|0;c[k+4>>2]=w|3;w=k+w+4|0;c[w>>2]=c[w>>2]|1}else{c[k+4>>2]=m|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){e=c[11393]|0;b=n>>>3;d=45592+(b<<1<<2)|0;b=1<>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[11390]=h;c[11393]=i}w=k+8|0;l=x;return w|0}else n=m}else n=m}else n=m}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;k=c[11389]|0;if(k){e=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{o=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(n|o|j)+(v<>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;d=c[45856+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;i=d;h=m<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[i+4>>2]&-8)-m|0;if(f>>>0>>0)if(!f){e=0;d=i;a=i;v=61;break a}else{a=i;e=f}f=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(f|0)==0|(f|0)==(i|0)?d:f;f=(i|0)==0;if(f){v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<>>12&16;o=o>>>i;h=o>>>5&8;o=o>>>h;j=o>>>2&4;o=o>>>j;n=o>>>1&2;o=o>>>n;d=o>>>1&1;a=0;d=c[45856+((h|i|j|n|d)+(o>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else v=61}if((v|0)==61)while(1){v=0;n=(c[d+4>>2]&-8)-m|0;o=n>>>0>>0;e=o?n:e;a=o?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){i=a;h=e;break}else v=61}if((i|0)!=0?h>>>0<((c[11390]|0)-m|0)>>>0:0){g=i+m|0;if(g>>>0<=i>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=45856+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=k&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=k;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=k}else e=k}else e=k;while(0);do if(h>>>0>=16){c[i+4>>2]=m|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=45856+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+m|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=m}else n=m}else n=-1;while(0);d=c[11390]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[11393]|0;if(b>>>0>15){w=a+n|0;c[11393]=w;c[11390]=b;c[w+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=n|3}else{c[11390]=0;c[11393]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}i=c[11391]|0;if(i>>>0>n>>>0){u=i-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=p&-16^1431655768;a=4096}else a=c[11508]|0;j=n+48|0;k=n+47|0;h=a+k|0;f=0-a|0;m=h&f;if(m>>>0<=n>>>0){w=0;l=x;return w|0}a=c[11498]|0;if(a|0?(o=c[11496]|0,p=o+m|0,p>>>0<=o>>>0|p>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[11499]&4)){d=c[11394]|0;c:do if(d){e=46e3;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(s=e+4|0,(a+(c[s>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=h-i&f;if(b>>>0<2147483647){a=tca(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[s>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=tca(0)|0;if((d|0)!=(-1|0)?(b=d,q=c[11507]|0,r=q+-1|0,b=((r&b|0)==0?0:(r+b&0-q)-b|0)+m|0,q=c[11496]|0,r=b+q|0,b>>>0>n>>>0&b>>>0<2147483647):0){s=c[11498]|0;if(s|0?r>>>0<=q>>>0|r>>>0>s>>>0:0){b=0;break}a=tca(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(j>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[11508]|0;a=k-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((tca(a|0)|0)==(-1|0)){tca(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[11499]=c[11499]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?m>>>0<2147483647:0)?(g=tca(m|0)|0,s=tca(0)|0,t=s-g|0,u=t>>>0>(n+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=u?t:b;v=135}if((v|0)==135){b=(c[11496]|0)+h|0;c[11496]=b;if(b>>>0>(c[11497]|0)>>>0)c[11497]=b;j=c[11394]|0;do if(j){b=46e3;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=143;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==143?(c[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[d>>2]=e+h;w=(c[11391]|0)+h|0;u=j+8|0;u=(u&7|0)==0?0:0-u&7;v=j+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[j+w+4>>2]=40;c[11395]=c[11510];break}if(g>>>0<(c[11392]|0)>>>0)c[11392]=g;a=g+h|0;b=46e3;while(1){if((c[b>>2]|0)==(a|0)){v=151;break}b=c[b+8>>2]|0;if(!b){a=46e3;break}}if((v|0)==151)if(!(c[b+12>>2]&8)){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((j|0)!=(b|0)){if((c[11393]|0)==(b|0)){w=(c[11390]|0)+i|0;c[11390]=w;c[11393]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=45856+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[11389]=c[11389]&~(1<>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(u|v|b)+(w<>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=45856+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[11389]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=192;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=191;break}else{a=a<<1;d=b}}if((v|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==192){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[11391]|0)+i|0;c[11391]=w;c[11394]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}else a=46e3;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(c[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=d-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+d+4>>2]=40;c[11395]=c[11510];d=a+4|0;c[d>>2]=27;c[b>>2]=c[11500];c[b+4>>2]=c[11501];c[b+8>>2]=c[11502];c[b+12>>2]=c[11503];c[11500]=g;c[11501]=h;c[11503]=0;c[11502]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(u|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=45856+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[11389]|0;a=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=213;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=212;break}else{a=a<<1;d=b}}if((v|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==213){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[11392]|0;if((w|0)==0|g>>>0>>0)c[11392]=g;c[11500]=g;c[11501]=h;c[11503]=0;c[11397]=c[11506];c[11396]=-1;c[11401]=45592;c[11400]=45592;c[11403]=45600;c[11402]=45600;c[11405]=45608;c[11404]=45608;c[11407]=45616;c[11406]=45616;c[11409]=45624;c[11408]=45624;c[11411]=45632;c[11410]=45632;c[11413]=45640;c[11412]=45640;c[11415]=45648;c[11414]=45648;c[11417]=45656;c[11416]=45656;c[11419]=45664;c[11418]=45664;c[11421]=45672;c[11420]=45672;c[11423]=45680;c[11422]=45680;c[11425]=45688;c[11424]=45688;c[11427]=45696;c[11426]=45696;c[11429]=45704;c[11428]=45704;c[11431]=45712;c[11430]=45712;c[11433]=45720;c[11432]=45720;c[11435]=45728;c[11434]=45728;c[11437]=45736;c[11436]=45736;c[11439]=45744;c[11438]=45744;c[11441]=45752;c[11440]=45752;c[11443]=45760;c[11442]=45760;c[11445]=45768;c[11444]=45768;c[11447]=45776;c[11446]=45776;c[11449]=45784;c[11448]=45784;c[11451]=45792;c[11450]=45792;c[11453]=45800;c[11452]=45800;c[11455]=45808;c[11454]=45808;c[11457]=45816;c[11456]=45816;c[11459]=45824;c[11458]=45824;c[11461]=45832;c[11460]=45832;c[11463]=45840;c[11462]=45840;w=h+-40|0;u=g+8|0;u=(u&7|0)==0?0:0-u&7;v=g+u|0;u=w-u|0;c[11394]=v;c[11391]=u;c[v+4>>2]=u|1;c[g+w+4>>2]=40;c[11395]=c[11510]}while(0);b=c[11391]|0;if(b>>>0>n>>>0){u=b-n|0;c[11391]=u;w=c[11394]|0;v=w+n|0;c[11394]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[(e9()|0)>>2]=12;w=0;l=x;return w|0}function X8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[11392]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0>>0)return;if((c[11393]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[11390]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=45856+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[11394]|0)==(j|0)){j=(c[11391]|0)+b|0;c[11391]=j;c[11394]=i;c[i+4>>2]=j|1;if((i|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(j|0)){j=(c[11390]|0)+b|0;c[11390]=j;c[11393]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[11388]=c[11388]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=45856+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=45592+(a<<1<<2)|0;b=c[11388]|0;a=1<>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=45856+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[11389]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[11389]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[11396]|0)+-1|0;c[11396]=j;if(!j)a=46008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[11396]=-1;return}function Y8(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=W8(b)|0;return b|0}if(b>>>0>4294967231){c[(e9()|0)>>2]=12;b=0;return b|0}d=Z8(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=W8(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;qca(d|0,a|0,(e>>>0>>0?e:b)|0)|0;X8(a);b=d;return b|0}function Z8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[11508]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;_8(k,d);return a|0}if((c[11394]|0)==(i|0)){k=(c[11391]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[11394]=e;c[11391]=d;return a|0}if((c[11393]|0)==(i|0)){e=(c[11390]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[11390]=d;c[11393]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else g=f}else g=e;while(1){f=d+20|0;e=c[f>>2]|0;if(e|0){d=e;g=f;continue}e=d+16|0;f=c[e>>2]|0;if(!f)break;else{d=f;g=e}}c[g>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=j|m&1|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;_8(i,k);return a|0}return 0}function _8(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[11393]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[11390]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){e=h+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=45856+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[11389]=c[11389]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[11394]|0)==(i|0)){i=(c[11391]|0)+b|0;c[11391]=i;c[11394]=h;c[h+4>>2]=i|1;if((h|0)!=(c[11393]|0))return;c[11393]=0;c[11390]=0;return}if((c[11393]|0)==(i|0)){i=(c[11390]|0)+b|0;c[11390]=i;c[11393]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[11388]=c[11388]&~(1<>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){d=i+16|0;a=d+4|0;b=c[a>>2]|0;if(!b){b=c[d>>2]|0;if(!b){d=0;break}else a=d}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);if(g|0){b=c[i+28>>2]|0;a=45856+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[11389]=c[11389]&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[11393]|0)){c[11390]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=45592+(b<<1<<2)|0;a=c[11388]|0;b=1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;b=14-(e|g|b)+(i<>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=45856+(b<<2)|0;c[h+28>>2]=b;c[h+20>>2]=0;c[h+16>>2]=0;a=c[11389]|0;d=1<>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;return}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=69;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=68;break}else{a=a<<1;d=b}}if((b|0)==68){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;return}else if((b|0)==69){g=d+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=d;c[h+24>>2]=0;return}}function $8(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;if(!(c[11506]|0)){c[11508]=4096;c[11507]=4096;c[11509]=-1;c[11510]=-1;c[11511]=0;c[11499]=0;c[11506]=n&-16^1431655768}m=c[11394]|0;if(!m){i=0;h=0;g=0;d=0;e=0;f=0;b=0}else{h=c[11391]|0;b=h+40|0;k=46e3;d=b;g=1;do{i=c[k>>2]|0;f=i+8|0;j=i+(c[k+4>>2]|0)|0;f=i+((f&7|0)==0?0:0-f&7)|0;do{if(f>>>0>=j>>>0|(m|0)==(f|0))break;e=c[f+4>>2]|0;if((e|0)==7)break;o=e&-8;d=o+d|0;e=(e&3|0)==1;g=g+(e&1)|0;b=(e?o:0)+b|0;f=f+o|0}while(f>>>0>=i>>>0);k=c[k+8>>2]|0}while((k|0)!=0);f=c[11496]|0;i=d;d=f-d|0;e=c[11497]|0;f=f-b|0}c[a>>2]=i;c[a+4>>2]=g;o=a+8|0;c[o>>2]=0;c[o+4>>2]=0;c[a+16>>2]=d;c[a+20>>2]=e;c[a+24>>2]=0;c[a+28>>2]=f;c[a+32>>2]=b;c[a+36>>2]=h;l=n;return}function a9(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=g9(c[a+60>>2]|0)|0;a=d9(Ob(6,d|0)|0)|0;l=b;return a|0}function b9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=3;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Nb(54,f|0)|0):0)a[b+75>>0]=-1;f=f9(b,d,e)|0;l=g;return f|0}function c9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((d9(Ib(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function d9(a){a=a|0;if(a>>>0>4294963200){c[(e9()|0)>>2]=0-a;a=-1}return a|0}function e9(){return 46112}function f9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=d9(Kb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=b+(o<<31>>31)|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=d9(Kb(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function g9(a){a=a|0;return a|0}function h9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=d9(Jb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function i9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function j9(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+208|0;j=m+8|0;k=m;h=O(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)k9(a,d,e,f,j);else m9(a,d,e,k,f,0,j);if((f|0)==1){n9(k,1);f=0;break}else{n9(k,b);f=1;break}}else{k9(a,d,e,f,j);l9(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0>>0)}else{f=1;b=1}m9(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1){if(!(c[g>>2]|0))break a}else if((f|0)>=2){n9(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;l9(k,1);m9(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);n9(k,1);b=c[k>>2]|1;c[k>>2]=b;h=a+i|0;m9(h,d,e,k,n,1,j);a=h;f=n;continue}b=o9(k)|0;l9(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}while(0);l=m;return}function k9(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((Fd[d&63](a,g)|0)>-1?(Fd[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((Fd[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);q9(b,m,e);l=n;return}function l9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function m9(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+240|0;n=p+232|0;o=p;q=c[e>>2]|0;c[n>>2]=q;j=c[e+4>>2]|0;k=n+4|0;c[k>>2]=j;c[o>>2]=a;a:do if((q|0)!=1|(j|0)!=0?(m=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(Fd[d&63](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+m|0;i=c[h+(f+-2<<2)>>2]|0;if((Fd[d&63](g,j)|0)>-1){i=10;break a}if((Fd[d&63](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[o+(e<<2)>>2]=j;q=o9(n)|0;l9(n,q);f=q+f|0;if(!((c[n>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((Fd[d&63](a,c[o>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{q=j;e=g;g=1;j=a;a=q}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){q9(b,o,e);k9(a,b,d,f,h)}l=p;return}function n9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<>2]=d<>2]|0)+-1|0)|0;if(!b){b=p9(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function p9(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function q9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;qca(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;qca(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function r9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function s9(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function t9(a,b){a=a|0;b=b|0;u9(a,b)|0;return a|0}function u9(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function v9(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function w9(){return 4380}function x9(b,c){b=b|0;c=c|0;b=M9(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function y9(b,c){b=b|0;c=c|0;var d=0;d=a[c>>0]|0;do if(d<<24>>24){b=x9(b,d<<24>>24)|0;if(b){if(a[c+1>>0]|0)if(a[b+1>>0]|0){if(!(a[c+2>>0]|0)){b=G9(b,c)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=H9(b,c)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=I9(b,c)|0;break}else{b=J9(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function z9(a,b,c){a=a|0;b=b|0;c=c|0;A9(a,b,c)|0;return a|0}function A9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);sca(b|0,0,e|0)|0;return b|0}function B9(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function C9(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(e9()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=D9(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((d[40982+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){B9(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if(e>>>0>(d[40982+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;B9(b,0);c[(e9()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=gca(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=hca(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=D9(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[41238+((e*23|0)>>>5&7)>>0]|0;f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k|i<>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<134217728&e>>>0>k>>>0);k=0}else{j=i;k=0;i=0}l=nca(-1,-1,n|0)|0;m=z;if(e>>>0<=(f&255)>>>0|(m>>>0>>0|(m|0)==(k|0)&l>>>0>>0)){f=k;n=72;break}else j=k;while(1){i=oca(i|0,j|0,n|0)|0;k=z;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[40982+i>>0]|0;j=f&255;if(e>>>0>j>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;k=f&255}while(i>>>0<119304647&e>>>0>k>>>0);k=0}else{j=i;i=0;k=0}if(e>>>0>(f&255)>>>0){n=lca(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=gca(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=hca(k|0,l|0,f|0,0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;f=a[40982+j>>0]|0;if(e>>>0<=(f&255)>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if(e>>>0>(d[40982+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while(e>>>0>(d[40982+i>>0]|0)>>>0);c[(e9()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0>>0|(e|0)==(h|0)&i>>>0>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(e9()|0)>>2]=34;g=hca(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(e9()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=ica(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function D9(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;h=c[f>>2]|0;if((h|0)!=0?(c[b+108>>2]|0)>=(h|0):0)i=4;else{e=E9(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){j=c[f>>2]|0;h=c[b+4>>2]|0;f=g-(c[b+108>>2]|0)|0;g=j;if((j-h|0)<(f|0))f=g;else f=h+(f+-1)|0}else{g=c[f>>2]|0;f=g}c[b+100>>2]=f;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;j=b+108|0;c[j>>2]=g+1-f+(c[j>>2]|0)}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else i=4}if((i|0)==4){c[b+100>>2]=0;e=-1}return e|0}function E9(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((F9(a)|0)==0?(Nd[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function F9(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)Nd[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function G9(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;g=(d[c>>0]|0)<<8|(d[c+1>>0]|0);f=d[b>>0]|0;while(1){c=b+1|0;e=a[c>>0]|0;if(!(e<<24>>24))break;f=f<<8&65280|e&255;if((f|0)==(g|0))break;else b=c}return (e<<24>>24?b:0)|0}function H9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8;e=b+2|0;c=a[e>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(c&255)<<8;if(!((b|0)==(f|0)|c<<24>>24==0))do{e=e+1|0;c=a[e>>0]|0;b=(b|c&255)<<8}while(!((b|0)==(f|0)|c<<24>>24==0));return (c<<24>>24?e+-2|0:0)|0}function I9(b,c){b=b|0;c=c|0;var e=0,f=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;e=a[c>>0]|0;b=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|e&255;if(!(e<<24>>24==0|(b|0)==(f|0)))do{c=c+1|0;e=a[c>>0]|0;b=b<<8|e&255}while(!(e<<24>>24==0|(b|0)==(f|0)));return (e<<24>>24?c+-3|0:0)|0}function J9(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;do{if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((e&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(e&31);s=s+1|0;c[u+((e&255)<<2)>>2]=s;e=a[d+s>>0]|0}while(e<<24>>24!=0);m=s>>>0>1;if(m){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){n=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){n=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){n=1;break}else{f=e+1|0;k=e}}if(m){h=0;m=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+m)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){i=n;g=m;h=26;break a}}f=h-m|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){i=n;g=m;h=26;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){i=n;f=1;h=26;break}else{h=g+1|0;m=g}}}else{i=n;f=1;g=-1;h=26}}else{i=1;e=-1;f=1;g=-1;h=26}}else{i=1;e=-1;s=0;f=1;g=-1;h=26}while(0);e:do if((h|0)==26){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:i;q=q?g:e;r=q+1|0;if(!(r9(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0>>0){i=i9(g,0,k)|0;if(i)if((i-h|0)>>>0>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function K9(a){a=a|0;return 0}function L9(a){a=a|0;return}function M9(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(v9(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function N9(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=4624;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(e9()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=O9(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function O9(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((P9(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=K9(b)|0;else o=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=P9(b,d,n,q,p)|0;if(h){Nd[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=P9(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)L9(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function P9(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[(e9()|0)>>2]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)Q9(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;t=v?k:-1;p=v?1:p;n=v?m+3|0:n}else t=-1;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0;if(v>>>0>31|(1<>24)+-32|m;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;v=(k<<24>>24)+-32|0}while(!(v>>>0>31|(1<>24==42){o=n+1|0;k=(a[o>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[D>>2]=n;u=(k|0)<0;k=u?0-k|0:k;u=u?m|8192:m}else{k=R9(D)|0;if((k|0)<0){j=-1;break}u=m;n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=R9(D)|0;n=c[D>>2]|0;break}o=n+2|0;m=(a[o>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=o;n=o}else m=-1;while(0);s=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;o=a[(a[n>>0]|0)+-65+(41247+(s*58|0))>>0]|0;q=o&255;if((q+-1|0)>>>0<8){s=q;n=v}else break}if(!(o<<24>>24)){j=-1;break}r=(t|0)>-1;do if(o<<24>>24==19)if(r){j=-1;break a}else w=48;else{if(r){c[i+(t<<2)>>2]=q;r=g+(t<<3)|0;t=c[r+4>>2]|0;w=E;c[w>>2]=c[r>>2];c[w+4>>2]=t;w=48;break}if(!x){j=0;break a}S9(E,q,f)}while(0);if((w|0)==48?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(s|0)!=0&(n&15|0)==3?n&-33:n;t=u&-65537;u=(u&8192|0)==0?u:t;d:do switch(n|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=60;break}case 88:case 120:{e=u;w=60;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=U9(e,n,y)|0;s=A-r|0;o=0;q=41711;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=66;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=ica(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=41711;w=65;break d}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?41711:41713):41712;w=65;break d}}case 117:{n=E;o=0;q=41711;e=c[n>>2]|0;n=c[n+4>>2]|0;w=65;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=41711;r=y;n=1;m=t;break}case 109:{n=W9(c[(e9()|0)>>2]|0)|0;w=70;break}case 115:{n=c[E>>2]|0;n=n|0?n:41721;w=70;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=74;break}case 83:{e=c[E>>2]|0;if(!m){X9(d,32,k,0,u);e=0;w=83}else{r=m;n=e;w=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Z9(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=41711;r=y;n=m;m=u}}while(0);e:do if((w|0)==60){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=T9(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?41711:41711+(n>>4)|0;s=e;e=t;n=u;w=66}else if((w|0)==65){r=V9(e,n,y)|0;s=u;w=66}else if((w|0)==70){w=0;u=i9(n,0,m)|0;s=(u|0)==0;e=n;o=0;q=41711;r=s?n+m|0:u;n=s?m:u-n|0;m=t}else if((w|0)==74){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Y9(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}X9(d,32,k,e,u);if(!e){e=0;w=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=83;break e}m=Y9(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=83;break e}Q9(d,G,m);if(o>>>0>=e>>>0){w=83;break}else n=n+4|0}}}while(0);if((w|0)==66){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=A-r+((n^1)&1)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==83){w=0;X9(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;X9(d,32,k,u,m);Q9(d,q,o);X9(d,48,k,u,m^65536);X9(d,48,s,t,0);Q9(d,e,t);X9(d,32,k,u,m^8192);e=v}f:do if((w|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;S9(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=H;return j|0}function Q9(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kaa(b,d,a)|0;return}function R9(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function S9(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function T9(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[41759+(b&15)>>0]|0|f;b=nca(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function U9(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=nca(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function V9(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=mca(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=lca(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function W9(a){a=a|0;return eaa(a,c[(daa()|0)+188>>2]|0)|0}function X9(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;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;sca(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Q9(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Q9(a,f,e)}l=g;return}function Y9(a,b){a=a|0;b=b|0;if(!a)a=0;else a=baa(a,b,0)|0;return a|0}function Z9(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;_9(e)|0;if((z|0)<0){e=-e;C=1;B=41728}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?41729:41734):41731}_9(e)|0;do if(0==0&(z&2146435072|0)==2146435072){G=(i&32|0)!=0;j=C+3|0;X9(b,32,f,j,h&-65537);Q9(b,B,C);Q9(b,e!=e|0.0!=0.0?(G?43678:41755):G?41747:41751,3);X9(b,32,f,j,h^8192)}else{r=+$9(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){p=i&32;s=(p|0)==0?B:B+9|0;q=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[s>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=V9(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;m=(g|0)<1;n=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=p|d[41759+D>>0];e=(e-+(D|0))*16.0;if((k-F|0)==1?!(n&(m&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-F+j|0)<(g|0):0){k=j-F|0;j=g+2|0}else{j=j-F|0;k=j}E=E-o|0;F=E+q+j|0;X9(b,32,f,F,h);Q9(b,s,q);X9(b,48,f,F,h^65536);Q9(b,G,k);X9(b,48,j-k|0,0,0);Q9(b,o,E);X9(b,32,f,F,h^8192);j=F;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=oca(c[j>>2]|0,0,o|0)|0;x=hca(x|0,z|0,m|0,0)|0;y=z;v=mca(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=lca(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0>>0){o=(1<>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=(n|0)%9|0;if((n|0)<8){o=10;while(1){o=o*10|0;if((n|0)<7)n=n+1|0;else break}}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=k+((v^1)&1)|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=V9(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;X9(b,32,f,j,h);Q9(b,B,C);X9(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=V9(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)Q9(b,41775,1);if(n>>>0>>0&(k|0)>0)while(1){m=V9(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){sca(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}Q9(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0>>0&(k|0)>9)){k=m;break}else k=m}X9(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=V9(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;Q9(b,m,1);if(s&(k|0)<1){m=n;break}Q9(b,41775,1);m=n}else{if(m>>>0<=G>>>0)break;sca(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;Q9(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}X9(b,48,k+18|0,18,0);Q9(b,v,E-v|0)}X9(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function _9(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function $9(a,b){a=+a;b=b|0;return +(+aaa(a,b))}function aaa(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=nca(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+aaa(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function baa(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(caa()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(e9()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(e9()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function caa(){return w9()|0}function daa(){return w9()|0}function eaa(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[41777+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=41865;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=41865;else{f=41865;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return faa(f,c[e+20>>2]|0)|0}function faa(a,b){a=a|0;b=b|0;return gaa(a,b)|0}function gaa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=haa(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function haa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=iaa(c[b+8>>2]|0,o)|0;f=iaa(c[b+12>>2]|0,o)|0;g=iaa(c[b+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=d-(h<<2)|0,f>>>0>>0&g>>>0>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=iaa(c[b+(g<<2)>>2]|0,o)|0;g=iaa(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=jaa(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=iaa(c[b+(f<<2)>>2]|0,o)|0;f=iaa(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function iaa(a,b){a=a|0;b=b|0;var c=0;c=pca(a|0)|0;return ((b|0)==0?a:c)|0}function jaa(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function kaa(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(laa(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0>>0){f=Nd[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=Nd[c[e+36>>2]&63](e,b,i)|0;if(f>>>0>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);qca(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function laa(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function maa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;qca(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function naa(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;i=(f|0)==0?46116:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?g:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}g=(c[c[(oaa()|0)+188>>2]>>2]|0)==0;f=a[d>>0]|0;if(g){c[h>>2]=f<<24>>24&57343;f=1;break}f=(f&255)+-194|0;if(f>>>0>50){j=17;break}f=c[4176+(f<<2)>>2]|0;g=e+-1|0;if(g){d=d+1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;m=(b&255)>>>3;if((m+-16|m+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=(b&255)+-128|f<<6;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[(e9()|0)>>2]=84;f=-1}l=k;return f|0}function oaa(){return w9()|0}function paa(a){a=a|0;return (a+-32|0)>>>0<95|0}function qaa(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0}while((s9(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=D9(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[43669+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[43678+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=D9(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=D9(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=D9(b)|0;if((e|32|0)==120){g=+raa(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+saa(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(e9()|0)>>2]=22;B9(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function raa(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=D9(a)|0;l=0}a:while(1){switch(j|0){case 46:{w=8;break a}case 48:break;default:{s=0;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=D9(a)|0;l=1;continue}}if((w|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=D9(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=D9(a)|0;l=hca(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;n=0;o=1.0;h=0.0;i=0;t=1;v=0;u=0}else{s=1;n=0;o=1.0;h=0.0;i=0;m=j;t=l;v=0;u=0;l=0;j=0}}while(1){q=m+-48|0;p=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=o;r=t;l=u;j=v;q=u;p=v}else{m=46;break}else w=20}else w=20;if((w|0)==20){w=0;m=(m|0)>57?p+-87|0:q;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;k=o;h=h+o*+(m|0);break}else{t=(n|0)!=0|(m|0)==0;n=t?n:1;k=o;h=t?h:h+o*.5;break}else{k=o;i=m+(i<<4)|0}while(0);q=hca(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;o=k;m=d[m>>0]|0;t=r;v=p;u=q;continue}else{o=k;m=D9(a)|0;t=r;v=p;u=q;continue}}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(!i)c[y>>2]=(c[y>>2]|0)+-1;if(!((s|0)==0|i))c[y>>2]=(c[y>>2]|0)+-1}else B9(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;while(1){i=i<<4;w=l;l=hca(l|0,j|0,1,0)|0;if(!((j|0)<0|(j|0)==0&w>>>0<7)){n=i;break}else j=z}}else n=i;if((m|32|0)==112){j=taa(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){B9(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=oca(q|0,p|0,2)|0;l=hca(l|0,z|0,-32,-1)|0;l=hca(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[(e9()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0>>0){c[(e9()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=hca(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=ica(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=hca(e|0,z|0,l|0,i|0)|0;e=z;if((e|0)<(y|0)|(e|0)==(y|0)&i>>>0>>0)if((i|0)>0)w=59;else{j=0;i=84;w=61}else{i=b;w=59}if((w|0)==59)if((i|0)<53){j=i;i=84-i|0;w=61}else{k=0.0;h=+(f|0)}if((w|0)==61){h=+(f|0);k=+vaa(+uaa(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=(f?0.0:o)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(e9()|0)>>2]=34;h=+xaa(h,l)}while(0);return +h}function saa(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=D9(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48){k=0;b=0;while(1){k=hca(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=G+496|0;w=0;k=0;u=0;x=v;y=p;A=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;q=p;o=n}else break c;else{p=hca(p|0,n|0,1,0)|0;n=z;v=(b|0)!=48;if((k|0)>=125){if(!v)break;c[C>>2]=c[C>>2]|1;break}m=G+(k<<2)|0;if(!w)b=A;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;k=k+(y&1)|0;u=v?p:u;y=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=D9(a)|0;A=b+-48|0;m=(b|0)==46;if(!(m|A>>>0<10)){v=x;m=y;A=29;break b}}b=w;m=(y|0)!=0;A=37}else{w=0;k=0;u=0;m=p;p=0;n=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}m=taa(a,h)|0;b=z;if((m|0)==0&(b|0)==-2147483648){if(!h){B9(a,0);i=0.0;break}if(!(c[E>>2]|0)){m=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;m=0;b=0}}y=hca(m|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(m){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(m){y=q;A=41}else A=40;do if((A|0)==40){c[(e9()|0)>>2]=22;B9(a,0);i=0.0}else if((A|0)==41){m=c[G>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[(e9()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0>>0){c[(e9()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){if((y|0)==9){i=+(g|0)*+((c[G>>2]|0)>>>0);break}if((y|0)<9){i=+(g|0)*+((c[G>>2]|0)>>>0)/+(c[4748+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;b=c[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[4748+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[4748+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=oca(c[p>>2]|0,0,29)|0;k=hca(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=lca(k|0,m|0,1e9,0)|0;k=mca(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){p=0;while(1){n=p+y&127;if((n|0)==(k|0)){F=2;A=88;break}n=c[G+(n<<2)>>2]|0;o=c[4780+(p<<2)>>2]|0;if(n>>>0>>0){F=2;A=88;break}if(n>>>0>o>>>0)break;n=p+1|0;if((p|0)<1)p=n;else{F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=i*t;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+vaa(+uaa(1.0,105-n|0),j);r=+waa(j,+uaa(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+waa(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=b+((H^1)&1)|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[(e9()|0)>>2]=34}while(0);i=+xaa(i,b)}while(0);l=J;return +i}function taa(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0;h=a+4|0;e=c[h>>2]|0;i=a+100|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[i>>2]|0)!=0:0)c[h>>2]=(c[h>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[i>>2]|0)){f=-2147483648;e=0}else{c[h>>2]=(c[h>>2]|0)+-1;f=-2147483648;e=0}else{g=0;do{g=e+-48+(g*10|0)|0;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&(g|0)<214748364);b=((g|0)<0)<<31>>31;if((e+-48|0)>>>0<10)do{b=gca(g|0,b|0,10,0)|0;g=z;e=hca(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=hca(e|0,z|0,b|0,g|0)|0;b=z;e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));if((e+-48|0)>>>0<10)do{e=c[h>>2]|0;if(e>>>0<(c[i>>2]|0)>>>0){c[h>>2]=e+1;e=d[e>>0]|0}else e=D9(a)|0}while((e+-48|0)>>>0<10);if(c[i>>2]|0)c[h>>2]=(c[h>>2]|0)+-1;i=(f|0)!=0;e=ica(0,0,g|0,b|0)|0;f=i?z:b;e=i?e:g}z=f;return e|0}function uaa(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=oca(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function vaa(a,b){a=+a;b=+b;return +(+Aaa(a,b))}function waa(a,b){a=+a;b=+b;return +(+yaa(a,b))}function xaa(a,b){a=+a;b=b|0;return +(+uaa(a,b))}function yaa(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=nca(i|0,l|0,52)|0;e=e&2047;m=nca(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=oca(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=zaa(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=oca(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=oca(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=oca(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=oca(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=oca(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=oca(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=oca(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=oca(f|0,d|0,1)|0;g=z;e=e+-1|0;f=ica(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=oca(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=hca(f|0,d|0,0,-1048576)|0;d=z;e=oca(e|0,0,52)|0;d=d|z;e=o|e}else{e=nca(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function zaa(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function Aaa(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function Baa(a,b){a=+a;b=+b;var d=0,e=0,f=0,h=0,i=0,k=0,l=0,m=0;h=(g[j>>2]=a,c[j>>2]|0);k=(g[j>>2]=b,c[j>>2]|0);d=h>>>23&255;i=k>>>23&255;l=h&-2147483648;f=k<<1;a:do if((f|0)!=0?!((d|0)==255|((Caa(b)|0)&2147483647)>>>0>2139095040):0){e=h<<1;if(e>>>0<=f>>>0)return +((e|0)==(f|0)?a*0.0:a);if(!d){d=h<<9;if((d|0)>-1){e=d;d=0;do{d=d+-1|0;e=e<<1}while((e|0)>-1)}else d=0;e=h<<1-d}else e=h&8388607|8388608;if(!i){h=k<<9;if((h|0)>-1){f=0;do{f=f+-1|0;h=h<<1}while((h|0)>-1)}else f=0;i=f;k=k<<1-f}else k=k&8388607|8388608;f=e-k|0;h=(f|0)>-1;b:do if((d|0)>(i|0)){while(1){if(h)if(!f)break;else e=f;e=e<<1;d=d+-1|0;f=e-k|0;h=(f|0)>-1;if((d|0)<=(i|0))break b}b=a*0.0;break a}while(0);if(h)if(!f){b=a*0.0;break}else e=f;if(e>>>0<8388608)do{e=e<<1;d=d+-1|0}while(e>>>0<8388608);if((d|0)>0)d=e+-8388608|d<<23;else d=e>>>(1-d|0);b=(c[j>>2]=d|l,+g[j>>2])}else m=3;while(0);if((m|0)==3){b=a*b;b=b/b}return +b}function Caa(a){a=+a;return (g[j>>2]=a,c[j>>2]|0)|0}function Daa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=K9(a)|0;else f=0;Eaa(a);g=(c[a>>2]&1|0)!=0;if(!g){e=Faa()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;Gaa()}b=Haa(a)|0;b=Bd[c[a+12>>2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)X8(d);if(g){if(f|0)L9(a)}else X8(a);return b|0}function Eaa(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=(Jaa()|0)+232|0;else a=a+116|0;c[a>>2]=b}return}function Faa(){Fb(46120);return 46128}function Gaa(){Pb(46120);return}function Haa(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Iaa(a)|0;break}d=(K9(a)|0)==0;b=Iaa(a)|0;if(!d)L9(a)}else{if(!(c[1011]|0))b=0;else b=Haa(c[1011]|0)|0;a=c[(Faa()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=K9(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Iaa(a)|0|b;if(d|0)L9(a);a=c[a+56>>2]|0}while((a|0)!=0);Gaa()}while(0);return b|0}function Iaa(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0>>0)Nd[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Jaa(){return w9()|0}function Kaa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(i9(43682,f<<24>>24,4)|0){e=W8(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(x9(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(x9(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Lb(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Lb(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Nb(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=47;c[e+36>>2]=3;c[e+40>>2]=2;c[e+12>>2]=1;if(!(c[11513]|0))c[e+76>>2]=-1;Laa(e)|0}}else{c[(e9()|0)>>2]=22;e=0}l=o;return e|0}function Laa(a){a=a|0;var b=0,d=0;b=Faa()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Gaa();return a|0}function Maa(a){a=a|0;var b=0,c=0;c=(v9(a)|0)+1|0;b=W8(c)|0;if(!b)b=0;else qca(b|0,a|0,c|0)|0;return b|0}function Naa(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=O(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(K9(e)|0)==0;a=kaa(a,f,e)|0;if(!g)L9(e)}else a=kaa(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Oaa(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(laa(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((Nd[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function Paa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(i9(43682,a[d>>0]|0,4)|0){f=Qaa(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=d9(Mb(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Lb(221,g|0)|0}b=Kaa(e,d)|0;if(!b){c[h>>2]=e;Ob(6,h|0)|0;b=0}}else b=0}else{c[(e9()|0)>>2]=22;b=0}l=i;return b|0}function Qaa(b){b=b|0;var c=0,d=0,e=0;d=(x9(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(x9(b,120)|0)==0;d=e?d:d|128;b=(x9(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Raa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Saa(a,b,f)|0;l=e;return d|0}function Saa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=48;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;h=Uaa(e,b,d)|0;l=g;return h|0}function Taa(a,b,c){a=a|0;b=b|0;c=c|0;return Yaa(a,b,c)|0}function Uaa(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,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;P=l;l=l+288|0;J=P+8|0;K=P+17|0;L=P;M=P+16|0;if((c[b+76>>2]|0)>-1)O=K9(b)|0;else O=0;i=a[e>>0]|0;a:do if(i<<24>>24){B=b+4|0;C=b+100|0;D=b+108|0;E=b+8|0;F=K+10|0;G=K+33|0;A=J+4|0;H=K+1|0;I=K+1|0;m=e;t=0;e=0;k=0;j=0;b:while(1){c:do if(!(s9(i&255)|0)){i=i<<24>>24==37;d:do if(i){p=m+1|0;n=a[p>>0]|0;e:do switch(n<<24>>24){case 37:break d;case 42:{y=0;m=m+2|0;break}default:{i=(n&255)+-48|0;if(i>>>0<10?(a[m+2>>0]|0)==36:0){y=Vaa(f,i)|0;m=m+3|0;break e}m=(c[f>>2]|0)+(4-1)&~(4-1);y=c[m>>2]|0;c[f>>2]=m+4;m=p}}while(0);i=a[m>>0]|0;n=i&255;if((n+-48|0)>>>0<10){p=0;do{p=(p*10|0)+-48+n|0;m=m+1|0;i=a[m>>0]|0;n=i&255}while((n+-48|0)>>>0<10)}else p=0;i=i<<24>>24==109;x=(y|0)!=0;k=i?0:k;j=i?0:j;m=i?m+1|0:m;i=x&i;n=m+1|0;switch(a[m>>0]|0){case 104:{w=(a[n>>0]|0)==104;q=w?-2:-1;m=w?m+2|0:n;break}case 108:{w=(a[n>>0]|0)==108;q=w?3:1;m=w?m+2|0:n;break}case 106:{q=3;m=n;break}case 116:case 122:{q=1;m=n;break}case 76:{q=2;m=n;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{q=0;break}default:{N=135;break b}}s=d[m>>0]|0;u=(s&47|0)==3;s=u?s|32:s;u=u?1:q;r=s&255;switch(r<<24>>24){case 99:{p=(p|0)>1?p:1;w=t;break}case 91:{w=t;break}case 110:{Waa(y,u,t,((t|0)<0)<<31>>31);n=t;break c}default:{B9(b,0);do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0}while((s9(n)|0)!=0);if(!(c[C>>2]|0))n=c[B>>2]|0;else{n=(c[B>>2]|0)+-1|0;c[B>>2]=n}w=(c[D>>2]|0)+t+n-(c[E>>2]|0)|0}}B9(b,p);n=c[B>>2]|0;q=c[C>>2]|0;if(n>>>0>>0)c[B>>2]=n+1;else{if((D9(b)|0)<0){N=135;break b}q=c[C>>2]|0}if(q|0)c[B>>2]=(c[B>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{v=(s|0)==99;g:do if((s|16|0)==115){sca(H|0,-1,256)|0;a[K>>0]=0;if((s|0)==115){a[G>>0]=0;a[F>>0]=0;a[F+1>>0]=0;a[F+2>>0]=0;a[F+3>>0]=0;a[F+4>>0]=0}}else{s=m+1|0;n=(a[s>>0]|0)==94;t=n&1;m=n?m+2|0:s;sca(I|0,n&1|0,256)|0;a[K>>0]=0;n=a[m>>0]|0;switch(n<<24>>24){case 45:{n=46;N=63;break}case 93:{n=94;N=63;break}default:{}}while(1){if((N|0)==63){N=0;a[K+n>>0]=t^1;n=m+1|0;m=n;n=a[n>>0]|0}h:do switch(n<<24>>24){case 0:{N=135;break b}case 93:break g;case 45:{s=m+1|0;n=a[s>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){r=(t^1)&255;m=m&255;do{m=m+1|0;a[K+m>>0]=r;n=a[s>>0]|0}while((m|0)<(n&255|0));m=s}else m=s;break}default:{}}while(0);n=(n&255)+1|0;N=63}}while(0);n=v?p+1|0:31;s=(u|0)==1;i:do if(s){if(i){j=W8(n<<2)|0;if(!j){k=0;j=0;i=1;N=135;break b}}else j=y;c[J>>2]=0;c[A>>2]=0;r=n;k=0;j:while(1){q=(j|0)==0;do{k:while(1){n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0))break j;a[M>>0]=n;switch(naa(L,M,1,J)|0){case -1:{k=0;N=135;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[L>>2];k=k+1|0}}while(!(i&(k|0)==(r|0)));k=r<<1|1;n=Y8(j,k<<2)|0;if(!n){k=0;i=1;N=135;break b}else{u=r;r=k;j=n;k=u}}if(!(Xaa(J)|0)){k=0;N=135;break b}else{n=k;k=0;r=j}}else{if(i){k=W8(n)|0;if(!k){k=0;j=0;i=1;N=135;break b}else{q=n;j=0}while(1){do{n=c[B>>2]|0;if(n>>>0<(c[C>>2]|0)>>>0){c[B>>2]=n+1;n=d[n>>0]|0}else n=D9(b)|0;if(!(a[K+(n+1)>>0]|0)){n=j;r=0;j=0;break i}a[k+j>>0]=n;j=j+1|0}while((j|0)!=(q|0));j=q<<1|1;n=Y8(k,j)|0;if(!n){j=0;i=1;N=135;break b}else{u=q;q=j;k=n;j=u}}}if(!y){k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){n=0;k=0;r=0;j=0;break i}k=c[C>>2]|0}}else{n=0;k=q;while(1){j=c[B>>2]|0;if(j>>>0>>0){c[B>>2]=j+1;j=d[j>>0]|0}else j=D9(b)|0;if(!(a[K+(j+1)>>0]|0)){k=y;r=0;j=0;break i}a[y+n>>0]=j;n=n+1|0;k=c[C>>2]|0}}}while(0);if(!(c[C>>2]|0))q=c[B>>2]|0;else{q=(c[B>>2]|0)+-1|0;c[B>>2]=q}q=q-(c[E>>2]|0)+(c[D>>2]|0)|0;if(!q){N=137;break b}if(!((q|0)==(p|0)|v^1)){N=137;break b}do if(i)if(s){c[y>>2]=r;break}else{c[y>>2]=k;break}while(0);if(!v){if(r|0)c[r+(n<<2)>>2]=0;if(!k){k=0;break f}a[k+n>>0]=0}break}case 120:case 88:case 112:{n=16;N=123;break}case 111:{n=8;N=123;break}case 117:case 100:{n=10;N=123;break}case 105:{n=0;N=123;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+qaa(b,u,0);if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(y)switch(u|0){case 0:{g[y>>2]=o;break f}case 1:{h[y>>3]=o;break f}case 2:{h[y>>3]=o;break f}default:break f}break}default:{}}while(0);do if((N|0)==123){N=0;n=C9(b,n,0,-1,-1)|0;if((c[D>>2]|0)==((c[E>>2]|0)-(c[B>>2]|0)|0)){N=137;break b}if(x&(s|0)==112){c[y>>2]=n;break}else{Waa(y,u,n,z);break}}while(0);e=e+(x&1)|0;n=(c[D>>2]|0)+w+(c[B>>2]|0)-(c[E>>2]|0)|0;break c}while(0);m=m+(i&1)|0;B9(b,0);i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0;if((i|0)!=(d[m>>0]|0)){N=22;break b}n=t+1|0}else{while(1){i=m+1|0;if(!(s9(d[i>>0]|0)|0))break;else m=i}B9(b,0);do{i=c[B>>2]|0;if(i>>>0<(c[C>>2]|0)>>>0){c[B>>2]=i+1;i=d[i>>0]|0}else i=D9(b)|0}while((s9(i)|0)!=0);if(!(c[C>>2]|0))i=c[B>>2]|0;else{i=(c[B>>2]|0)+-1|0;c[B>>2]=i}n=(c[D>>2]|0)+t+i-(c[E>>2]|0)|0}while(0);m=m+1|0;i=a[m>>0]|0;if(!(i<<24>>24))break a;else t=n}if((N|0)==22){if(c[C>>2]|0)c[B>>2]=(c[B>>2]|0)+-1;if((e|0)!=0|(i|0)>-1)break;else{i=0;N=136}}else if((N|0)==135){i=i&1;if(!e)N=136}else if((N|0)==137)i=i&1;if((N|0)==136)e=-1;if(i){X8(k);X8(j)}}else e=0;while(0);if(O|0)L9(b);l=P;return e|0}function Vaa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function Waa(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Xaa(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Yaa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=i9(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0>>0?f:d;qca(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function Zaa(a,b,c){a=a|0;b=b|0;c=c|0;return _aa(a,b,c)|0}function _aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(K9(a)|0)==0;b=$aa(a,b,d)|0;if(!e)L9(a)}else b=$aa(a,b,d)|0;return b|0}function $aa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Nd[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((Nd[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function aba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(K9(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=Oaa(d,b)|0;L9(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=Oaa(d,b)|0}while(0);return e|0}function bba(b,d,e,f){b=b|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;k=O(e,d)|0;e=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)j=K9(f)|0;else j=0;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;m=(c[f+8>>2]|0)-h|0;i=m>>>0>>0?m:k;if((m|0)>0){qca(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=k-i|0;b=b+i|0}else g=k;a:do if(!g)l=13;else{i=f+32|0;while(1){if(F9(f)|0)break;h=Nd[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g){l=13;break a}else b=b+h|0}if(j|0)L9(f);e=((k-g|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(j)L9(f);return e|0}function cba(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Nd[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function dba(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(K9(a)|0)==0;a=cba(a)|0}else a=cba(a)|0;return a|0}function eba(a){a=a|0;return dba(a)|0}function fba(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=O9(c[979]|0,a,e)|0;l=d;return b|0}function gba(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=W8(b)|0;if(a|0)break;a=bca()|0;if(!a){a=0;break}de[a&63]()}return a|0}function hba(a){a=a|0;X8(a);return}function iba(a){a=a|0;qc()}function jba(a){a=a|0;qc()}function kba(b){b=b|0;if((a[b+11>>0]|0)<0)hba(c[b>>2]|0);return}function lba(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)iba(b);j=b+11|0;g=a[j>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}i=k>>>0>d>>>0?k:d;d=i>>>0<11;i=d?10:(i+16&-16)+-1|0;do if((i|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{HA(b,d,(g&255)+1|0)|0;hba(d);h=16}}else{e=i+1|0;f=gba(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{HA(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;HA(f,e,(c[d>>2]|0)+1|0)|0;hba(e);if(g){e=i+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[j>>0]=k;break}}while(0);return}function mba(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=r9(a,b,c)|0;return a|0}function nba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)h=c[b+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)jba(b);h=h-d|0;e=h>>>0>>0?h:e;if(i)b=c[b>>2]|0;h=e>>>0>g>>>0;b=mba(b+d|0,f,h?g:e)|0;if(!b)return (e>>>0>>0?-1:h&1)|0;else return b|0;return 0}function oba(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=l;l=l+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=pba()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=43822;qba(43772,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(Nd[c[(c[190]|0)+16>>2]&63](760,e,f)|0){i=c[f>>2]|0;i=Bd[c[(c[i>>2]|0)+8>>2]&63](i)|0;c[g>>2]=43822;c[g+4>>2]=a;c[g+8>>2]=i;qba(43686,g)}else{c[i>>2]=43822;c[i+4>>2]=a;qba(43731,i)}}qba(43810,h)}function pba(){var a=0,b=0;a=l;l=l+16|0;if(!(yc(46132,43)|0)){b=wc(c[11534]|0)|0;l=a;return b|0}else qba(43961,a);return 0}function qba(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=c[1012]|0;O9(b,a,d)|0;aba(10,b)|0;qc()}function rba(a){a=a|0;return}function sba(a){a=a|0;rba(a);hba(a);return}function tba(a){a=a|0;return}function uba(a){a=a|0;return}function vba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;f=h;if(!(zba(a,b,0)|0))if((b|0)!=0?(g=Dba(b,784,768,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;ye[c[(c[g>>2]|0)+28>>2]&15](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;l=h;return b|0}function wba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);return}function xba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(zba(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Bba(0,d,e,f);while(0);return}function yba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);return}function zba(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Aba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Bba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function Cba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Dba(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;o=q;n=c[d>>2]|0;p=d+(c[n+-8>>2]|0)|0;n=c[n+-4>>2]|0;c[o>>2]=f;c[o+4>>2]=d;c[o+8>>2]=e;c[o+12>>2]=g;d=o+16|0;e=o+20|0;g=o+24|0;h=o+28|0;i=o+32|0;j=o+40|0;k=d;m=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(zba(n,f,0)|0){c[o+48>>2]=1;Ge[c[(c[n>>2]|0)+20>>2]&7](n,o,p,p,1,0);d=(c[g>>2]|0)==1?p:0}else{Ce[c[(c[n>>2]|0)+24>>2]&15](n,o,p,1,0);switch(c[o+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);l=q;return d|0}function Eba(a){a=a|0;rba(a);hba(a);return}function Fba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(zba(a,c[b+8>>2]|0,g)|0)Cba(0,b,d,e,f);else{a=c[a+8>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e,f,g)}return}function Gba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){j=c[b+8>>2]|0;Ce[c[(c[j>>2]|0)+24>>2]&15](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;k=d+53|0;a[k>>0]=0;b=c[b+8>>2]|0;Ge[c[(c[b>>2]|0)+20>>2]&7](b,d,e,e,1,g);if(a[k>>0]|0)if(!(a[f>>0]|0)){f=3;j=11}else f=3;else{f=4;j=11}if((j|0)==11){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Hba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(zba(a,c[b+8>>2]|0,0)|0)Aba(0,b,d,e);else{a=c[a+8>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d,e)}return}function Iba(a){a=a|0;return}function Jba(){var a=0;a=l;l=l+16|0;if(!(xc(46136,85)|0)){l=a;return}else qba(44010,a)}function Kba(a){a=a|0;var b=0;b=l;l=l+16|0;X8(a);if(!(zc(c[11534]|0,0)|0)){l=b;return}else qba(44060,b)}function Lba(){var a=0,b=0;a=pba()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)Mba(c[b+12>>2]|0);Mba(Nba()|0)}function Mba(a){a=a|0;var b=0;b=l;l=l+16|0;de[a&63]();qba(44113,b)}function Nba(){var a=0;a=c[1197]|0;c[1197]=a+0;return a|0}function Oba(a){a=a|0;rba(a);hba(a);return}function Pba(a,b,c){a=a|0;b=b|0;c=c|0;return zba(a,b,0)|0}function Qba(a){a=a|0;rba(a);hba(a);return}function Rba(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Sba(a,b,0)|0))if(((b|0)!=0?(e=Dba(b,784,840,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(zba(c[a>>2]|0,c[b>>2]|0,0)|0)?!(zba(c[a>>2]|0,872,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=Dba(a,784,768,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=Dba(f,784,768,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;ye[c[(c[i>>2]|0)+28>>2]&15](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;l=j;return a|0}function Sba(a,b,c){a=a|0;b=b|0;c=c|0;if(zba(a,b,0)|0)a=1;else a=zba(b,896,0)|0;return a|0}function Tba(a){a=a|0;rba(a);hba(a);return}function Uba(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zba(b,c[d+8>>2]|0,h)|0)Cba(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Yba(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Yba(b,d,e,f,g,h);b=b+8|0}while(b>>>0>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Vba(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(zba(b,c[d+8>>2]|0,g)|0)){if(!(zba(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Zba(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Zba(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Yba(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Bba(0,d,e,f);while(0);return}function Wba(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(zba(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Xba(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Xba(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0>>0)}}else Aba(0,d,e,f);while(0);return}function Xba(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;ye[c[(c[a>>2]|0)+28>>2]&15](a,b,d+f|0,g&2|0?e:2);return}function Yba(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;Ge[c[(c[a>>2]|0)+20>>2]&7](a,b,d,e+h|0,i&2|0?f:2,g);return}function Zba(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;Ce[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,h&2|0?e:2,f);return}function _ba(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function $ba(a){a=a|0;return}function aca(a){a=a|0;return}function bca(){var a=0;a=c[11535]|0;c[11535]=a+0;return a|0}function cca(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=c[d>>2];a=Nd[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=f;return a&1|0}function dca(a){a=a|0;if(!a)a=0;else a=(Dba(a,784,840,0)|0)!=0&1;return a|0}function eca(){}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=fca(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function hca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function ica(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function jca(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function kca(a,b,d,e,f){a=a|0;b=b|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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=jca(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((jca(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=hca(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;ica(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=ica(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kca(a,b,c,d,0)|0}function mca(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;kca(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function nca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function oca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function qca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return sc(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rca(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qca(b,c,d)|0;return b|0}function sca(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function tca(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Hb(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Hb(12);return -1}return b|0}function uca(a){a=a|0;return +wd[a&31]()}function vca(a,b){a=a|0;b=b|0;return +xd[a&3](b|0)}function wca(a,b,c){a=a|0;b=b|0;c=c|0;return +yd[a&15](b|0,c|0)}function xca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +zd[a&1](b|0,c|0,d|0)}function yca(a){a=a|0;return Ad[a&31]()|0}function zca(a,b){a=a|0;b=b|0;return Bd[a&63](b|0)|0}function Aca(a,b,c){a=a|0;b=b|0;c=+c;return Cd[a&1](b|0,+c)|0}function Bca(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return Dd[a&3](b|0,+c,+d)|0}function Cca(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;return Ed[a&1](b|0,+c,+d,+e,+f)|0}function Dca(a,b,c){a=a|0;b=b|0;c=c|0;return Fd[a&63](b|0,c|0)|0}function Eca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;return Gd[a&3](b|0,c|0,+d)|0}function Fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;return Hd[a&3](b|0,c|0,+d,+e)|0}function Gca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;return Id[a&7](b|0,c|0,+d,+e,+f,g|0,+h)|0}function Hca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return Jd[a&7](b|0,c|0,+d,+e,f|0,+g)|0}function Ica(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;return Kd[a&1](b|0,c|0,+d,+e,f|0,g|0)|0}function Jca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;return Ld[a&1](b|0,c|0,+d,e|0)|0}function Kca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;return Md[a&7](b|0,c|0,+d,e|0,f|0,g|0)|0}function Lca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nd[a&63](b|0,c|0,d|0)|0}function Mca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;return Od[a&1](b|0,c|0,d|0,+e)|0}function Nca(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;return Pd[a&1](b|0,c|0,d|0,+e,+f)|0}function Oca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=+i;return Qd[a&3](b|0,c|0,d|0,+e,+f,+g,h|0,+i)|0}function Pca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;return Rd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0)|0}function Qca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;return Sd[a&1](b|0,c|0,d|0,+e,+f,+g,h|0,i|0,+j)|0}function Rca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;return Td[a&3](b|0,c|0,d|0,+e,+f,g|0,+h)|0}function Sca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=h|0;return Ud[a&1](b|0,c|0,d|0,+e,+f,g|0,h|0)|0}function Tca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;return Vd[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0)|0}function Uca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wd[a&31](b|0,c|0,d|0,e|0)|0}function Vca(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;return Xd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0)|0}function Wca(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=+k;return Yd[a&1](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,+k)|0}function Xca(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;i=+i;return Zd[a&1](b|0,c|0,d|0,e|0,+f,+g,h|0,+i)|0}function Yca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;return _d[a&1](b|0,c|0,d|0,e|0,+f,g|0)|0}function Zca(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 $d[a&15](b|0,c|0,d|0,e|0,f|0)|0}function _ca(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return ae[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function $ca(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return be[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ada(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return ce[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function bda(a){a=a|0;de[a&63]()}function cda(a,b){a=a|0;b=+b;ee[a&15](+b)}function dda(a,b,c){a=a|0;b=+b;c=+c;fe[a&3](+b,+c)}function eda(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;ge[a&3](+b,+c,+d,e|0,f|0,g|0)}function fda(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;he[a&1](+b,c|0,d|0)}function gda(a,b){a=a|0;b=b|0;ie[a&127](b|0)}function hda(a,b,c){a=a|0;b=b|0;c=+c;je[a&7](b|0,+c)}function ida(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ke[a&1](b|0,+c,+d)}function jda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;le[a&1](b|0,+c,+d,+e,f|0,g|0,h|0)}function kda(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;me[a&3](b|0,+c,d|0,e|0)}function lda(a,b,c){a=a|0;b=b|0;c=c|0;ne[a&127](b|0,c|0)} +function zy(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0.0,h=0.0,i=0.0,j=0.0;a=Dy(a)|0;j=+g[b>>2];f=+g[b+12>>2];h=+g[b+4>>2];i=(+g[b+8>>2]-j)/(f-h);if(!a)Bb(18325,17918,2373,18333);else{g[a+8>>2]=i;g[a+12>>2]=i!=0.0?1.0/i:0.0;g[a+4>>2]=j+i*(e-h)-+(d|0);g[a+16>>2]=c[b+16>>2]|0?1.0:-1.0;g[a+20>>2]=h;g[a+24>>2]=f;c[a>>2]=0;return a|0}return 0}function Ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var h=0.0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0;x=f+1.0;a:do if(e|0){y=+(d|0);z=b+-4|0;A=(d|0)>0;b:while(1){i=+g[e+24>>2];if(!(i>=f)){e=4;break}s=+g[e+8>>2];u=+g[e+4>>2];do if(s==0.0){if(u=0.0)){Cy(z,0,e,u,f,u,x);break}else{q=~~u;Cy(a,q,e,u,f,u,x);Cy(z,q+1|0,e,u,f,u,x);break}}else{v=s+u;k=+g[e+12>>2];h=+g[e+20>>2];if(!(h<=x)){e=11;break b}q=h>f;t=q?h:f;m=q?u+s*(h-f):u;q=i=0.0&i>=0.0?m-1&(j|0)<(d|0))){e=17;break b}p=e+16|0;w=+(j|0);q=a+(j<<2)|0;g[q>>2]=+g[q>>2]+h*((1.0-(m-w+(i-w))*.5)*+g[p>>2]);q=b+(j<<2)|0;g[q>>2]=+g[q>>2]+h*+g[p>>2];break}if(m>i){h=v;k=-k;s=i;i=m;w=x-(r-f);v=x-(t-f)}else{h=u;s=m;w=t;v=r}p=~~s;l=~~i;n=p+1|0;t=k*(+(n|0)-h)+f;u=+g[e+16>>2];h=u*(t-w);q=a+(p<<2)|0;g[q>>2]=+g[q>>2]+(1.0-(s-+(p|0)+1.0)*.5)*h;m=k*u;if((n|0)<(l|0)){r=m*.5;j=n;do{q=a+(j<<2)|0;g[q>>2]=r+h+ +g[q>>2];h=m+h;j=j+1|0}while((j|0)!=(l|0))}if(!(+B(+h)<=1.0099999904632568)){e=25;break b}q=a+(l<<2)|0;g[q>>2]=u*(1.0-(i-+(l|0)+0.0)*.5)*(v-(k*+(l-n|0)+t))+h+ +g[q>>2];q=b+(l<<2)|0;g[q>>2]=(v-w)*u+ +g[q>>2];break}if(A){j=0;do{h=+(j|0);l=j;j=j+1|0;i=+(j|0);k=(h-u)/s+f;m=(i-u)/s+f;n=ui;do if(!(n&o)){p=vi;if(p&q){Cy(a,l,e,u,f,i,m);Cy(a,l,e,i,m,h,k);Cy(a,l,e,h,k,v,x);break}if(n&v>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(p&u>h){Cy(a,l,e,u,f,h,k);Cy(a,l,e,h,k,v,x);break}if(u>2]|0;if(!e)break a}if((e|0)==4)Bb(18055,17918,2585,18070);else if((e|0)==11)Bb(18099,17918,2604,18070);else if((e|0)==17)Bb(18135,17918,2632,18070);else if((e|0)==25)Bb(18153,17918,2669,18070)}while(0);return}function By(a){a=a|0;var b=0;a=c[a>>2]|0;if(a|0)do{b=a;a=c[a>>2]|0;Uf(b)}while((a|0)!=0);return}function Cy(a,b,c,d,e,f,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;h=+h;var i=0.0,j=0.0,k=0.0,l=0.0;do if(!(e==h)){if(!(e>2];k=+g[c+24>>2];if(!(i<=k))Bb(18208,17918,2544,18181);if(!(i>h|ke){l=i;j=(f-d)*(i-e)/(h-e)+d}else{l=e;j=d}if(k=i)break;Bb(18233,17918,2559,18181)}if(j<=i){if(f<=i)break;Bb(18241,17918,2561,18181)}if(!(j>=d)){if(!(!(f>=i)|!(f<=d)))break;Bb(18259,17918,2565,18181)}else{if(f>=d)break;Bb(18249,17918,2563,18181)}}while(0);if(!(!(j<=i)|!(f<=i))){b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(e-l)*+g[c+16>>2];break}if(!(j>=d)|!(f>=d))if(!(f<=d)|(!(j>=i)|!(j<=d)|!(f>=i)))Bb(18280,17918,2572,18181);else{b=a+(b<<2)|0;g[b>>2]=+g[b>>2]+(1.0-(j-i+(f-i))*.5)*((e-l)*+g[c+16>>2]);break}}}while(0);return}function Dy(a){a=a|0;var b=0,d=0,e=0;d=a+4|0;b=c[d>>2]|0;do if(!b){e=a+8|0;b=c[e>>2]|0;if(!b){b=vf(56004)|0;if(!b){b=0;break}c[b>>2]=c[a>>2];c[a>>2]=b;c[e>>2]=2e3;d=1999}else{d=b+-1|0;b=c[a>>2]|0}c[e>>2]=d;b=b+(d*28|0)|0}else c[d>>2]=c[b>>2];while(0);return b|0}function Ey(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0;n=l;l=l+32|0;m=n;if((b|0)>12)do{d=b>>>1;k=a+4|0;o=+g[k>>2];f=a+(d*20|0)|0;i=+g[a+(d*20|0)+4>>2];d=b+-1|0;p=+g[a+(d*20|0)+4>>2];j=i>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];c[m+8>>2]=c[e+8>>2];c[m+12>>2]=c[e+12>>2];c[m+16>>2]=c[e+16>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2]};c[m>>2]=c[a>>2];c[m+4>>2]=c[a+4>>2];c[m+8>>2]=c[a+8>>2];c[m+12>>2]=c[a+12>>2];c[m+16>>2]=c[a+16>>2];c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[f+16>>2]=c[m+16>>2];e=d;d=1;while(1){i=+g[k>>2];while(1){j=d+1|0;if(+g[a+(d*20|0)+4>>2]>2])e=f;else break}h=a+(d*20|0)|0;if((d|0)>=(e|0))break;e=a+(e*20|0)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[m+12>>2]=c[h+12>>2];c[m+16>>2]=c[h+16>>2];c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[e+16>>2]=c[m+16>>2];e=f;d=j}b=b-d|0;if((e|0)<(b|0)){Ey(a,e);a=h}else{Ey(h,b);b=e}}while((b|0)>12);l=n;return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0.0,j=0,k=0,m=0,n=0;k=l;l=l+16|0;j=k;if((b|0)>1){f=1;do{h=c[a+(f*20|0)>>2]|0;i=+g[a+(f*20|0)+4>>2];d=a+(f*20|0)+8|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];d=f;while(1){e=d+-1|0;if(!(i<+g[a+(e*20|0)+4>>2]))break;n=a+(e*20|0)|0;m=a+(d*20|0)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];if((d|0)>1)d=e;else{d=e;break}}if((f|0)!=(d|0)){n=a+(d*20|0)+8|0;c[a+(d*20|0)>>2]=h;g[a+(d*20|0)+4>>2]=i;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2]}f=f+1|0}while((f|0)!=(b|0))}l=k;return}function Gy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;if(a|0){g[a+(b<<3)>>2]=c;g[a+(b<<3)+4>>2]=d}return}function Hy(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=k|0;var l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0;m=(f*2.0+d+h)*.25;l=(g*2.0+e+i)*.25;a:do if((k|0)<=16){o=d;p=e;q=g;n=(h+d)*.5-m;e=(i+e)*.5-l;while(1){if(!(n*n+e*e>j))break;r=k;k=k+1|0;Hy(a,b,o,p,(o+f)*.5,(p+q)*.5,m,l,j,k);f=(f+h)*.5;q=(q+i)*.5;g=(m+f*2.0+h)*.25;d=(l+q*2.0+i)*.25;if((r|0)>15)break a;else{p=l;o=m;n=(m+h)*.5-g;e=(l+i)*.5-d;m=g;l=d}}Gy(a,c[b>>2]|0,h,i);c[b>>2]=(c[b>>2]|0)+1}while(0);return}function Iy(a,b,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=m|0;var n=0.0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0.0,y=0.0;o=f;n=g;while(1){v=o-d;u=n-e;t=h-o;s=i-n;r=j-h;f=k-i;q=j-d;g=k-e;f=+C(+(v*v+u*u))+ +C(+(t*t+s*s))+ +C(+(r*r+f*f));g=+C(+(q*q+g*g));if((m|0)>16)break;if(!(f*f-g*g>l)){p=5;break}y=(d+o)*.5;x=(e+n)*.5;s=(o+h)*.5;t=(n+i)*.5;u=(h+j)*.5;v=(i+k)*.5;f=(y+s)*.5;g=(x+t)*.5;s=(s+u)*.5;t=(t+v)*.5;q=(f+s)*.5;r=(g+t)*.5;w=m+1|0;Iy(a,b,d,e,y,x,f,g,q,r,l,w);d=q;e=r;o=s;n=t;h=u;i=v;m=w}if((p|0)==5){Gy(a,c[b>>2]|0,j,k);c[b>>2]=(c[b>>2]|0)+1}return}function Jy(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!(c[a+56>>2]|0)){b=Ly(a,b)|0;if((b|0)>=0){if(d|0)c[d>>2]=(_x((c[a+4>>2]|0)+b+2|0)|0)<<16>>16;if(e|0)c[e>>2]=(_x((c[a+4>>2]|0)+b+4|0)|0)<<16>>16;if(f|0)c[f>>2]=(_x((c[a+4>>2]|0)+b+6|0)|0)<<16>>16;if(!g)b=1;else{c[g>>2]=(_x((c[a+4>>2]|0)+b+8|0)|0)<<16>>16;b=1}}else b=0}else{Ky(a,b,d,e,f,g);b=1}return b|0}function Ky(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k;h=j+4|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[j>>2]=1;a=Oy(a,b,j)|0;if(d|0){i=(a|0)!=0;c[d>>2]=i?c[j+24>>2]|0:0;c[e>>2]=i?c[j+32>>2]|0:0;c[f>>2]=i?c[j+28>>2]|0:0;c[g>>2]=i?c[j+36>>2]|0:0}l=k;return}function Ly(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)Bb(18351,17918,1439,18367);if((c[a+12>>2]|0)>(b|0)?(d=c[a+44>>2]|0,(d|0)<=1):0){e=c[a+24>>2]|0;a=(c[a+4>>2]|0)+(c[a+16>>2]|0)|0;if(!d){b=a+(b<<1)|0;a=((My(b)|0)&65535)<<1;b=((My(b+2|0)|0)&65535)<<1}else{b=a+(b<<2)|0;a=Ny(b)|0;b=Ny(b+4|0)|0}a=a+e|0;a=(a|0)==(b+e|0)?-1:a}else a=-1;return a|0}function My(a){a=a|0;return ((d[a>>0]|0)<<8|(d[a+1>>0]|0))&65535|0}function Ny(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,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.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0;Q=l;l=l+352|0;v=Q+336|0;L=Q+144|0;M=Q+24|0;N=Q+12|0;O=Q;P=a+84|0;c[N>>2]=c[P>>2];c[N+4>>2]=c[P+4>>2];c[N+8>>2]=c[P+8>>2];P=a+60|0;c[v>>2]=c[P>>2];c[v+4>>2]=c[P+4>>2];c[v+8>>2]=c[P+8>>2];Py(O,v,b);P=O+4|0;w=O+8|0;a:do if((c[P>>2]|0)<(c[w>>2]|0)){x=a+116|0;y=a+72|0;z=L+4|0;A=L+8|0;C=L+12|0;D=L+16|0;E=L+20|0;F=L+24|0;G=L+28|0;H=L+32|0;I=L+36|0;J=L+40|0;K=L+44|0;t=1;e=0;r=0;u=0;s=0;b:while(1){j=Qy(O)|0;c:do switch(j<<24>>24){case 14:break b;case 20:case 19:{if(t)e=e+((s|0)/2|0)|0;Ry(O,(e+7|0)/8|0);k=0;i=r;j=u;f=0;q=70;break}case 23:case 18:case 3:case 1:{k=t;e=e+((s|0)/2|0)|0;i=r;j=u;f=0;q=70;break}case 21:{if((s|0)<2){e=0;break a}Sy(d,+g[L+(s+-2<<2)>>2],+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 4:{if((s|0)<1){e=0;break a}Sy(d,0.0,+g[L+(s+-1<<2)>>2]);k=0;i=r;j=u;f=0;q=70;break}case 22:{if((s|0)<1){e=0;break a}Sy(d,+g[L+(s+-1<<2)>>2],0.0);k=0;i=r;j=u;f=0;q=70;break}case 5:{if((s|0)<2){e=0;break a}else{f=0;i=1}do{Ty(d,+g[L+(f<<2)>>2],+g[L+(i<<2)>>2]);f=f+2|0;i=f|1}while((i|0)<(s|0));k=t;i=r;j=u;f=0;q=70;break}case 7:{if((s|0)<1){e=0;break a}else{f=0;q=20}break}case 6:{if((s|0)<1){e=0;break a}else{f=0;q=18}break}case 31:{if((s|0)<4){e=0;break a}else{j=0;q=28}break}case 30:{if((s|0)<4){e=0;break a}else{f=0;q=24}break}case 8:{if((s|0)<6){e=0;break a}else{f=0;i=5}while(1){Uy(d,+g[L+(f<<2)>>2],+g[L+((f|1)<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(f+3<<2)>>2],+g[L+(f+4<<2)>>2],+g[L+(i<<2)>>2]);i=f+11|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else f=f+6|0}break}case 24:{if((s|0)<8){e=0;break a}f=s+-2|0;j=0;i=5;do{Uy(d,+g[L+(j<<2)>>2],+g[L+((j|1)<<2)>>2],+g[L+(j+2<<2)>>2],+g[L+(j+3<<2)>>2],+g[L+(j+4<<2)>>2],+g[L+(i<<2)>>2]);q=j;j=j+6|0;i=q+11|0}while((i|0)<(f|0));f=j|1;if((f|0)>=(s|0)){e=0;break a}Ty(d,+g[L+(j<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 25:{if((s|0)<8){e=0;break a}f=s+-6|0;i=0;j=1;while(1){Ty(d,+g[L+(i<<2)>>2],+g[L+(j<<2)>>2]);k=i+2|0;j=k|1;if((j|0)>=(f|0))break;else i=k}f=i+7|0;if((f|0)>=(s|0)){e=0;break a}Uy(d,+g[L+(k<<2)>>2],+g[L+(j<<2)>>2],+g[L+(i+4<<2)>>2],+g[L+(i+5<<2)>>2],+g[L+(i+6<<2)>>2],+g[L+(f<<2)>>2]);k=t;i=r;j=u;f=0;q=70;break}case 27:case 26:{if((s|0)<4){e=0;break a}i=s&1;f=(i|0)==0;i=i+3|0;if((i|0)<(s|0)){j=j<<24>>24==27;p=f?0.0:+g[L>>2];f=(f^1)&1;while(1){m=+g[L+(f<<2)>>2];n=+g[L+(f+1<<2)>>2];o=+g[L+(f+2<<2)>>2];h=+g[L+(i<<2)>>2];if(j)Uy(d,m,p,n,o,h,0.0);else Uy(d,p,m,n,o,0.0,h);i=f+7|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;break}else{p=0.0;f=f+4|0}}}else{k=t;i=r;j=u;f=0;q=70}break}case 10:{if(!r)if(!(c[x>>2]|0)){i=1;q=54}else{Vy(N,a,b);i=1;q=54}else{i=r;q=54}break}case 29:{i=r;q=54;break}case 11:{if((u|0)<1){e=0;break a}j=u+-1|0;k=M+(j*12|0)|0;c[O>>2]=c[k>>2];c[O+4>>2]=c[k+4>>2];c[O+8>>2]=c[k+8>>2];k=t;i=r;f=s;q=70;break}case 12:switch((Qy(O)|0)<<24>>24){case 34:{if((s|0)<7){e=0;break a}o=+g[A>>2];m=+g[D>>2];n=+g[E>>2];p=+g[F>>2];Uy(d,+g[L>>2],0.0,+g[z>>2],o,+g[C>>2],0.0);Uy(d,m,0.0,n,-o,p,0.0);k=t;i=r;j=u;f=0;q=70;break c}case 35:{if((s|0)<13){e=0;break a}R=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];o=+g[J>>2];p=+g[K>>2];Uy(d,+g[L>>2],+g[z>>2],+g[A>>2],+g[C>>2],+g[D>>2],+g[E>>2]);Uy(d,R,h,m,n,o,p);k=t;i=r;j=u;f=0;q=70;break c}case 36:{if((s|0)<9){e=0;break a}o=+g[z>>2];p=+g[C>>2];h=+g[E>>2];m=+g[F>>2];R=+g[G>>2];n=+g[H>>2];Uy(d,+g[L>>2],o,+g[A>>2],p,+g[D>>2],0.0);Uy(d,h,0.0,m,R,n,-(o+p+R));k=t;i=r;j=u;f=0;q=70;break c}case 37:{if((s|0)<11){e=0;break a}Y=+g[L>>2];X=+g[z>>2];W=+g[A>>2];V=+g[C>>2];U=+g[D>>2];T=+g[E>>2];S=+g[F>>2];h=+g[G>>2];m=+g[H>>2];n=+g[I>>2];R=+g[J>>2];o=Y+W+U+S+m;p=X+V+T+h+n;k=+B(+o)>+B(+p);Uy(d,Y,X,W,V,U,T);Uy(d,S,h,m,n,k?R:-o,k?-p:R);k=t;i=r;j=u;f=0;q=70;break c}default:{e=0;break a}}case -1:{h=+((Yy(O,4)|0)>>>0)*.0000152587890625;q=74;break}case 28:{q=73;break}default:if((j&255)<32|j<<24>>24==-1){e=0;break a}else q=73}while(0);if((q|0)==54){if((s|0)<1){e=0;break a}f=s+-1|0;if((u|0)>9){e=0;break a}s=~~+g[L+(f<<2)>>2];r=M+(u*12|0)|0;c[r>>2]=c[O>>2];c[r+4>>2]=c[O+4>>2];c[r+8>>2]=c[O+8>>2];r=j<<24>>24==10?N:y;c[v>>2]=c[r>>2];c[v+4>>2]=c[r+4>>2];c[v+8>>2]=c[r+8>>2];Wy(O,v,s);if(!(c[w>>2]|0)){e=0;break a}c[P>>2]=0;k=t;j=u+1|0;q=70}else if((q|0)==73){Ry(O,-1);h=+(((Zy(O)|0)&65535)<<16>>16);q=74}if((q|0)==74){if((s|0)>47){e=0;break a}g[L+(s<<2)>>2]=h;k=t;i=r;j=u;f=s+1|0;q=70}while(1)if((q|0)==18){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,+g[L+(f<<2)>>2],0.0);f=f+1|0;q=20;continue}else if((q|0)==20){if((f|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}Ty(d,0.0,+g[L+(f<<2)>>2]);f=f+1|0;q=18;continue}else if((q|0)==24){i=f+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}j=f+4|0;if((s-f|0)==5)h=+g[L+(j<<2)>>2];else h=0.0;Uy(d,0.0,+g[L+(f<<2)>>2],+g[L+(f+1<<2)>>2],+g[L+(f+2<<2)>>2],+g[L+(i<<2)>>2],h);q=28;continue}else if((q|0)==28){i=j+3|0;if((i|0)>=(s|0)){k=t;i=r;j=u;f=0;q=70;continue}f=j+4|0;if((s-j|0)==5)h=+g[L+(f<<2)>>2];else h=0.0;Uy(d,+g[L+(j<<2)>>2],0.0,+g[L+(j+1<<2)>>2],+g[L+(j+2<<2)>>2],h,+g[L+(i<<2)>>2]);q=24;continue}else if((q|0)==70)if((c[P>>2]|0)<(c[w>>2]|0)){t=k;r=i;u=j;s=f;continue b}else{e=0;break a}}Xy(d);e=1}else e=0;while(0);l=Q;return e|0}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;dz(b,0);d=Yy(b,2)|0;e=Qy(b)|0;f=e&255;if(!((c|0)>-1&(d|0)>(c|0)))Bb(18593,17918,1117,18613);if((e+-1&255)<4){Ry(b,O(f,c)|0);e=Yy(b,f)|0;gz(a,b,(O(d+1|0,f)|0)+2+e|0,(Yy(b,f)|0)-e|0);return}else Bb(18510,17918,1118,18613)}function Qy(b){b=b|0;var d=0,e=0;d=b+4|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){b=c[b>>2]|0;c[d>>2]=e+1;b=a[b+e>>0]|0}else b=0;return b|0}function Ry(a,b){a=a|0;b=b|0;dz(a,(c[a+4>>2]|0)+b|0);return}function Sy(a,b,c){a=a|0;b=+b;c=+c;var d=0;Xy(a);d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;g[a+8>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;g[a+12>>2]=c;_y(a,1,~~b,~~c,0,0,0,0);return}function Ty(a,b,c){a=a|0;b=+b;c=+c;var d=0;d=a+16|0;b=+g[d>>2]+b;g[d>>2]=b;d=a+20|0;c=+g[d>>2]+c;g[d>>2]=c;_y(a,2,~~b,~~c,0,0,0,0);return}function Uy(a,b,c,d,e,f,h){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;h=+h;var i=0,j=0;j=a+16|0;b=+g[j>>2]+b;i=a+20|0;c=+g[i>>2]+c;d=b+d;e=c+e;f=d+f;g[j>>2]=f;h=e+h;g[i>>2]=h;_y(a,4,~~f,~~h,~~b,~~c,~~d,~~e);return}function Vy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;k=p+48|0;j=p+36|0;i=p+12|0;m=p+24|0;n=p;h=b+108|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];dz(i,0);a:do switch((Qy(i)|0)<<24>>24){case 0:{Ry(i,d);e=(Qy(i)|0)&255;break}case 3:{h=Yy(i,2)|0;e=Yy(i,2)|0;if((h|0)>0){f=0;while(1){g=Qy(i)|0;q=e;e=Yy(i,2)|0;f=f+1|0;if((q|0)<=(d|0)&(e|0)>(d|0))break;if((f|0)>=(h|0)){o=6;break a}}e=g&255}else o=6;break}default:o=6}while(0);if((o|0)==6){cz(k,0,0);e=-1}q=b+48|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];q=b+96|0;c[k>>2]=c[q>>2];c[k+4>>2]=c[q+4>>2];c[k+8>>2]=c[q+8>>2];Py(n,k,e);c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];ez(a,j,k);l=p;return}function Wy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;e=f;g=bz(b)|0;d=((g|0)>33899?32768:(g|0)>1239?1131:107)+d|0;if((d|0)>-1&(d|0)<(g|0)){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];Py(a,e,d)}else cz(a,0,0);l=f;return}function Xy(a){a=a|0;var b=0.0,c=0.0;c=+g[a+8>>2];b=+g[a+12>>2];if(!(!(c!=+g[a+16>>2])?!(b!=+g[a+20>>2]):0))_y(a,2,~~c,~~b,0,0,0,0);return}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0;if((b+-1|0)>>>0<4){c=0;d=0}else Bb(18405,17918,1013,18422);do{c=c<<8|(Qy(a)|0)&255;d=d+1|0}while((d|0)!=(b|0));return c|0}function Zy(a){a=a|0;var b=0,c=0,d=0;c=Qy(a)|0;d=c&255;a:do if((c+-32&255)<215)b=d+-139|0;else{if((c+9&255)<4){b=((d<<8)+-63232|(Qy(a)|0)&255)+108|0;break}if((c&255)>250&c<<24>>24!=-1){b=(251-d<<8)+-108-((Qy(a)|0)&255)|0;break}switch(c<<24>>24){case 28:{b=Yy(a,2)|0;break a}case 29:{b=Yy(a,4)|0;break a}default:Bb(18388,17918,1063,18390)}}while(0);return b|0}function _y(a,d,e,f,g,h,i,j){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if(c[a>>2]|0){$y(a,e,f);if(d<<24>>24==4){$y(a,g,h);$y(a,i,j)}}else{l=a+40|0;k=a+44|0;az((c[l>>2]|0)+((c[k>>2]|0)*14|0)|0,d,e,f,g,h);g=c[l>>2]|0;h=c[k>>2]|0;b[g+(h*14|0)+8>>1]=i;b[g+(h*14|0)+10>>1]=j}l=a+44|0;c[l>>2]=(c[l>>2]|0)+1;return}function $y(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+28|0;if(!((c[e>>2]|0)>=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;e=a+36|0;if(!((c[e>>2]|0)>=(d|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=d;e=a+24|0;if(!((c[e>>2]|0)<=(b|0)?(c[a+4>>2]|0)!=0:0))c[e>>2]=b;b=a+32|0;e=a+4|0;if(!((c[b>>2]|0)<=(d|0)?(c[e>>2]|0)!=0:0))c[b>>2]=d;c[e>>2]=1;return}function az(c,d,e,f,g,h){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[c+12>>0]=d;b[c>>1]=e;b[c+2>>1]=f;b[c+4>>1]=g;b[c+6>>1]=h;return}function bz(a){a=a|0;dz(a,0);return Yy(a,2)|0}function cz(a,b,d){a=a|0;b=b|0;d=d|0;if(d>>>0<1073741824){c[a>>2]=b;c[a+8>>2]=d;c[a+4>>2]=0;return}else Bb(18437,17918,1022,18455)}function dz(a,b){a=a|0;b=b|0;if((b|0)<0?1:(c[a+8>>2]|0)<(b|0))Bb(18470,17918,1e3,18494);else{c[a+4>>2]=b;return}}function ez(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h+20|0;i=h;g=h+8|0;c[f>>2]=0;e=i;c[e>>2]=0;c[e+4>>2]=0;fz(d,18,2,i);e=c[i+4>>2]|0;d=c[i>>2]|0;do if(!((e|0)==0|(d|0)==0)){gz(g,b,e,d);fz(g,19,1,f);d=c[f>>2]|0;if(!d){cz(a,0,0);break}else{dz(b,e+d|0);hz(a,b);break}}else cz(a,0,0);while(0);l=h;return}function fz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;iz(g,a,b);b=g+4|0;a:do if((d|0)>0){f=g+8|0;a=0;do{if((c[b>>2]|0)>=(c[f>>2]|0))break a;c[e+(a<<2)>>2]=Zy(g)|0;a=a+1|0}while((a|0)<(d|0))}while(0);l=h;return}function gz(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;cz(a,0,0);if((e|d|0)>=0?(f=c[b+8>>2]|0,!((f|0)<(d|0)|(f-d|0)<(e|0))):0){c[a>>2]=(c[b>>2]|0)+d;c[a+8>>2]=e}return}function hz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+4|0;e=c[d>>2]|0;f=Yy(b,2)|0;do if(f|0){h=Qy(b)|0;g=h&255;if((h+-1&255)<4){Ry(b,O(f,g)|0);Ry(b,(Yy(b,g)|0)+-1|0);break}else Bb(18510,17918,1048,18539)}while(0);gz(a,b,e,(c[d>>2]|0)-e|0);return}function iz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;dz(b,0);f=b+4|0;g=b+8|0;while(1){i=c[f>>2]|0;if((i|0)>=(c[g>>2]|0)){e=10;break}if(((jz(b)|0)&255)>27){do kz(b);while(((jz(b)|0)&255)>27);h=c[f>>2]|0}else h=i;e=Qy(b)|0;if(e<<24>>24==12)e=(Qy(b)|0)&255|256;else e=e&255;if((e|0)==(d|0)){e=9;break}}if((e|0)==9)gz(a,b,i,h-i|0);else if((e|0)==10)gz(a,b,0,0);return}function jz(b){b=b|0;var d=0;d=c[b+4>>2]|0;if((d|0)<(c[b+8>>2]|0))b=a[(c[b>>2]|0)+d>>0]|0;else b=0;return b|0}function kz(a){a=a|0;var b=0,d=0,e=0;b=jz(a)|0;if((b&255)<=27)Bb(18560,17918,1069,18569);a:do if(b<<24>>24==30){Ry(a,1);b=a+4|0;d=a+8|0;do{if((c[b>>2]|0)>=(c[d>>2]|0))break a;e=(Qy(a)|0)&255}while(!((e&15|0)==15|(e&240|0)==240))}else Zy(a)|0;while(0);return}function lz(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0;M=l;l=l+16|0;B=M;h=c[e+4>>2]|0;f=Ly(e,f)|0;c[g>>2]=0;a:do if((f|0)<0)f=0;else{f=h+f|0;h=_x(f)|0;b:do if(h<<16>>16>0){K=f+10|0;I=h<<16>>16<<1;h=K+I|0;i=My(h)|0;J=(My(h+-2|0)|0)&65535;L=vf(((I|1)+J|0)*14|0)|0;if(!L){f=0;break a}m=J+1|0;f=0;j=0;k=0;h=h+2+(i&65535)|0;do{if(!(j<<24>>24)){i=h+1|0;f=a[h>>0]|0;if(!(f&8)){j=0;h=i}else{j=a[i>>0]|0;h=h+2|0}}else j=j+-1<<24>>24;a[L+((k+I|0)*14|0)+12>>0]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&2)){if(!(i&16)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&16|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;k=0;do{j=k+I|0;i=d[L+(j*14|0)+12>>0]|0;if(!(i&4)){if(!(i&32)){f=((d[h>>0]<<8|d[h+1>>0])<<16>>16)+f|0;h=h+2|0}}else{H=d[h>>0]|0;f=(i&32|0?H:0-H|0)+f|0;h=h+1|0}b[L+(j*14|0)+2>>1]=f;k=k+1|0}while((k|0)!=(m|0));f=0;H=0;z=0;A=0;k=0;w=0;t=0;E=0;F=0;m=0;h=0;G=0;while(1){i=G+I|0;j=a[L+(i*14|0)+12>>0]|0;e=b[L+(i*14|0)>>1]|0;x=b[L+(i*14|0)+2>>1]|0;do if((z|0)!=(G|0)){h=(h|0)!=0;y=f+1|0;i=L+(f*14|0)|0;if(!(j&1)){if(!h){D=H;B=1;j=A;i=G;break}az(i,3,F+e>>1,E+x>>1,F,E);D=H;B=1;j=A;f=y;i=G;break}if(h){az(i,3,e,x,F,E);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}else{az(i,2,e,x,0,0);D=H;x=E;e=F;B=0;j=A;f=y;i=G;break}}else{if(!G)y=f;else y=nz(L,f,h,m,t,w,k,A,F,E)|0;D=j&1;m=(D^1)&255;do if(!(D<<24>>24)){f=i+1|0;h=b[L+(f*14|0)>>1]|0;if(!(a[L+(f*14|0)+12>>0]&1)){j=x;k=e;f=(b[L+(f*14|0)+2>>1]|0)+x>>1;h=h+e>>1;i=G;break}else{j=x;k=e;f=b[L+(f*14|0)+2>>1]|0;i=G+1|0;break}}else{j=A;f=x;h=e;i=G}while(0);az(L+(y*14|0)|0,1,h,f,0,0);D=H+1|0;z=((My(K+(H<<1)|0)|0)&65535)+1|0;x=E;e=F;B=0;w=f;t=h;f=y+1|0}while(0);if((i|0)<(J|0)){H=D;A=j;E=x;F=e;h=B;G=i+1|0}else break}h=L;f=nz(L,f,B,m,t,w,k,j,e,x)|0}else{if(h<<16>>16!=-1){if(h<<16>>16>=0){h=0;f=0;break}Bb(18388,17918,1723,18707)}h=0;m=f+10|0;f=0;x=0;y=0;k=0;while(1){c[B>>2]=0;z=_x(m)|0;t=_x(m+2|0)|0;i=m+4|0;z=z&65535;if(!(z&2)){D=42;break}if(!(z&1)){j=6;u=+(a[i>>0]|0);v=+(a[m+5>>0]|0)}else{u=+((_x(i)|0)<<16>>16);j=8;v=+((_x(m+6|0)|0)<<16>>16)}i=m+j|0;do if(!(z&8)){if(z&64|0){q=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+4|0;r=0.0;s=0.0;n=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;break}if(!(z&128)){w=i;q=1.0;r=0.0;s=0.0;n=1.0}else{q=+((_x(i)|0)<<16>>16)*.00006103515625;r=+((_x(i+2|0)|0)<<16>>16)*.00006103515625;s=+((_x(i+4|0)|0)<<16>>16)*.00006103515625;w=i+8|0;n=+((_x(i+6|0)|0)<<16>>16)*.00006103515625}}else{n=+((_x(i)|0)<<16>>16)*.00006103515625;w=i+2|0;q=n;r=0.0;s=0.0}while(0);o=+C(+(r*r+q*q));p=+C(+(n*n+s*s));j=ry(e,t&65535,B)|0;if((j|0)>0){A=c[B>>2]|0;i=0;do{L=A+(i*14|0)|0;K=A+(i*14|0)+2|0;N=+(b[L>>1]|0);O=+(b[K>>1]|0);b[L>>1]=~~(o*(u+(q*N+s*O)));b[K>>1]=~~(p*(v+(r*N+n*O)));K=A+(i*14|0)+4|0;L=A+(i*14|0)+6|0;O=+(b[K>>1]|0);N=+(b[L>>1]|0);b[K>>1]=~~(o*(u+(q*O+s*N)));b[L>>1]=~~(p*(v+(r*O+n*N)));i=i+1|0}while((i|0)!=(j|0));i=j+f|0;m=vf(i*14|0)|0;if(!m)break;if((f|0)>0)qca(m|0,y|0,f*14|0)|0;qca(m+(f*14|0)|0,A|0,j*14|0)|0;if(h|0)Uf(k);Uf(A);h=m;f=i;j=m;k=m;i=m}else{j=x;i=y}if(!(z&32))break b;else{m=w;x=j;y=i}}if((D|0)==42)Bb(18388,17918,1670,18707);if(h|0)Uf(x);Uf(A);f=0;break a}while(0);c[g>>2]=h}while(0);l=M;return f|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+96|0;e=k+48|0;f=k;g=e+4|0;h=g+44|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e>>2]=1;g=f;h=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if((Oy(a,b,e)|0)!=0?(j=e+44|0,h=vf((c[j>>2]|0)*14|0)|0,c[d>>2]=h,c[f+40>>2]=h,(Oy(a,b,f)|0)!=0):0){a=c[f+44>>2]|0;if((a|0)==(c[j>>2]|0))i=a;else Bb(18634,17918,2113,18684)}else{c[d>>2]=0;i=0}l=k;return i|0}function nz(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;k=(c|0)!=0;c=b+1|0;l=a+(b*14|0)|0;do if(!d)if(k){az(l,3,e,f,i,j);break}else{az(l,2,e,f,0,0);break}else{if(k)az(l,3,i+g>>1,j+h>>1,i,j);else c=b;az(a+(c*14|0)|0,3,e,f,g,h);c=c+1|0}while(0);return c|0}function oz(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+6>>1]|0;e=b[c+6>>1]|0;if((d&65535)<=(e&65535))if((d&65535)<(e&65535))a=1;else{e=b[a+4>>1]|0;a=b[c+4>>1]|0;a=(e&65535)>(a&65535)?-1:(e&65535)<(a&65535)&1}else a=-1;return a|0}function pz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;rz(a,d,f,g);i=a+8|0;h=c[i>>2]|0;if(((h|0)!=0?(j=(c[a+4>>2]|0)+g|0,(j|0)<=(c[d+4>>2]|0)):0)?(l=d+28|0,k=c[l>>2]|0,(k|0)!=0):0){g=c[a>>2]|0;b[k>>1]=g;b[k+2>>1]=j;i=k+4|0;c[l>>2]=c[i>>2];a=c[h>>2]|0;if((g|0)>(e[a>>1]|0|0)){h=a+4|0;a=c[h>>2]|0}c[h>>2]=k;h=a+4|0;d=c[h>>2]|0;g=g+f|0;a:do if(d)while(1){if((g|0)<(e[d>>1]|0|0))break a;c[h>>2]=c[l>>2];c[l>>2]=a;h=d+4|0;a=c[h>>2]|0;if(!a){a=d;break}else{f=d;d=a;a=f}}while(0);c[i>>2]=a;if((g|0)>(e[a>>1]|0|0))b[a>>1]=g}else c[i>>2]=0;return}function qz(a,b){a=a|0;b=b|0;a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((a|0)<(b|0)?-1:(a|0)>(b|0)&1)|0}function rz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=l;l=l+16|0;t=x;r=c[d+8>>2]|0;s=f+-1+r|0;s=s-((s|0)%(r|0)|0)|0;if((s|0)%(r|0)|0|0)Bb(18807,18829,350,18851);r=d+24|0;f=c[r>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)<=(c[d>>2]|0)){o=d+16|0;p=d+4|0;n=r;i=1073741824;h=1073741824;m=0;while(1){k=sz(f,j&65535,s,t)|0;do if(c[o>>2]|0)if((k+g|0)>(c[p>>2]|0))k=m;else{if((k|0)>=(i|0)){j=c[t>>2]|0;if((k|0)==(i|0)&(j|0)<(h|0))h=j;else{k=m;break}}else h=c[t>>2]|0;i=k;k=n}else{q=(k|0)<(i|0);i=q?k:i;k=q?n:m}while(0);n=f+4|0;f=c[n>>2]|0;j=b[f>>1]|0;if((s+(j&65535)|0)>(c[d>>2]|0))break;else m=k}if(!k){m=0;j=0}else{m=k;j=e[c[k>>2]>>1]|0}}else{h=1073741824;i=1073741824;m=0;j=0}a:do if((c[d+16>>2]|0)==1){k=c[r>>2]|0;if((s|0)>(e[k>>1]|0|0)){f=k;do f=c[f+4>>2]|0;while((s|0)>(e[f>>1]|0|0))}else f=k;if(f){q=d+4|0;d=j;j=r;while(1){n=(e[f>>1]|0)-s|0;if((n|0)>-1){o=k;p=j}else{f=21;break}while(1){j=o+4|0;k=c[j>>2]|0;if((n|0)<(e[k>>1]|0|0))break;else{o=k;p=j}}if((n|0)<(e[o>>1]|0|0)){f=24;break}k=sz(o,n,s,t)|0;do if((k|0)>(i|0)?1:(k+g|0)>=(c[q>>2]|0))j=d;else{j=c[t>>2]|0;if(!((k|0)<(i|0)|(j|0)<(h|0))){if(!((n|0)<(d|0)&(j|0)==(h|0))){j=d;break}}else h=j;j=n;m=p;i=k}while(0);f=c[f+4>>2]|0;if(!f){u=j;v=m;w=i;break a}else{d=j;k=o;j=p}}if((f|0)==21)Bb(18880,18829,407,18851);else if((f|0)==24)Bb(18890,18829,413,18851)}else{u=j;v=m;w=i}}else{u=j;v=m;w=i}while(0);c[a+8>>2]=v;c[a>>2]=u;c[a+4>>2]=w;l=x;return}function sz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=f+d|0;j=e[a>>1]|0;if((j|0)>(d|0))Bb(18930,18829,293,18945);if((e[c[a+4>>2]>>1]|0|0)<=(d|0))Bb(18971,18829,300,18945);if((o|0)>(j|0)){i=0;n=0;h=0;while(1){m=e[a+2>>1]|0;do if((h|0)<(m|0)){i=(O(m-h|0,n)|0)+i|0;a=c[a+4>>2]|0;l=b[a>>1]|0;k=l&65535;if((j|0)<(d|0)){h=m;k=k-d|0;j=l;break}else{h=m;k=k-j|0;j=l;break}}else{a=c[a+4>>2]|0;l=b[a>>1]|0;k=(l&65535)-j|0;k=(k+n|0)>(f|0)?f-n|0:k;i=(O(k,h-m|0)|0)+i|0;j=l}while(0);j=j&65535;if((o|0)<=(j|0))break;else n=k+n|0}}else{i=0;h=0}c[g>>2]=i;return h|0}function tz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;q=x+76|0;g=x+64|0;r=x+52|0;j=x+40|0;k=x+36|0;m=x+32|0;n=x+16|0;p=x+12|0;o=x+20|0;h=x;c[a+4>>2]=b;c[a+8>>2]=d;cz(q,0,0);i=a+48|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];v=uz(b,d,18990)|0;e=uz(b,d,18995)|0;c[a+16>>2]=e;A=uz(b,d,19e3)|0;w=a+20|0;c[w>>2]=A;f=uz(b,d,19005)|0;c[a+24>>2]=f;z=uz(b,d,19010)|0;c[a+28>>2]=z;y=uz(b,d,19015)|0;c[a+32>>2]=y;c[a+36>>2]=uz(b,d,19020)|0;a:do if(!((v|0)==0|(A|0)==0|(z|0)==0|(y|0)==0)){b:do if(f){if(!e){e=0;break a}}else{c[k>>2]=2;c[m>>2]=0;c[n>>2]=0;c[p>>2]=0;e=uz(b,d,19025)|0;do if(e|0?(cz(q,0,0),s=a+96|0,c[s>>2]=c[q>>2],c[s+4>>2]=c[q+4>>2],c[s+8>>2]=c[q+8>>2],cz(q,0,0),t=a+108|0,c[t>>2]=c[q>>2],c[t+4>>2]=c[q+4>>2],c[t+8>>2]=c[q+8>>2],cz(q,b+e|0,536870912),c[i>>2]=c[q>>2],c[i+4>>2]=c[q+4>>2],c[i+8>>2]=c[q+8>>2],c[r>>2]=c[i>>2],c[r+4>>2]=c[i+4>>2],c[r+8>>2]=c[i+8>>2],Ry(r,2),dz(r,(Qy(r)|0)&255),hz(q,r),hz(o,r),c[q>>2]=c[o>>2],c[q+4>>2]=c[o+4>>2],c[q+8>>2]=c[o+8>>2],Py(j,q,0),hz(q,r),hz(q,r),u=a+72|0,c[u>>2]=c[q>>2],c[u+4>>2]=c[q+4>>2],c[u+8>>2]=c[q+8>>2],fz(j,17,1,m),fz(j,262,1,k),fz(j,292,1,n),fz(j,293,1,p),c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[q>>2]=c[j>>2],c[q+4>>2]=c[j+4>>2],c[q+8>>2]=c[j+8>>2],ez(h,g,q),u=a+84|0,c[u>>2]=c[h>>2],c[u+4>>2]=c[h+4>>2],c[u+8>>2]=c[h+8>>2],u=c[m>>2]|0,!((c[k>>2]|0)!=2|(u|0)==0)):0){f=c[n>>2]|0;if(f|0){e=c[p>>2]|0;if(!e)break;dz(r,f);hz(q,r);c[s>>2]=c[q>>2];c[s+4>>2]=c[q+4>>2];c[s+8>>2]=c[q+8>>2];gz(q,r,e,(c[r+8>>2]|0)-e|0);c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2]}dz(r,u);hz(q,r);A=a+60|0;c[A>>2]=c[q>>2];c[A+4>>2]=c[q+4>>2];c[A+8>>2]=c[q+8>>2];break b}while(0);e=0;break a}while(0);e=uz(b,d,19030)|0;if(!e)e=65535;else e=(My(b+e+4|0)|0)&65535;c[a+12>>2]=e;A=My(b+v+2|0)|0;h=A&65535;i=a+40|0;c[i>>2]=0;if(A<<16>>16){j=v+4|0;g=0;e=0;do{f=b+(j+(g<<3))|0;c:do switch((My(f)|0)<<16>>16){case 3:{switch((My(f+2|0)|0)<<16>>16){case 10:case 1:break;default:break c}e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}case 0:{e=(Ny(f+4|0)|0)+v|0;c[i>>2]=e;break}default:{}}while(0);g=g+1|0}while((g|0)!=(h|0));if(e){c[a+44>>2]=(My(b+(c[w>>2]|0)+50|0)|0)&65535;e=1}else e=0}else e=0}else e=0;while(0);l=x;return e|0}function uz(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=My(b+c+4|0)|0;k=i&65535;j=c+12|0;a:do if(!(i<<16>>16))c=0;else{g=a[e>>0]|0;h=e+1|0;i=e+2|0;e=e+3|0;c=0;while(1){f=b+(j+(c<<4))|0;if((((d[f>>0]|0)==(g|0)?(d[f+1>>0]|0)==(a[h>>0]|0):0)?(d[f+2>>0]|0)==(a[i>>0]|0):0)?(d[f+3>>0]|0)==(a[e>>0]|0):0)break;c=c+1|0;if((c|0)>=(k|0)){c=0;break a}}c=Ny(f+8|0)|0}while(0);return c|0}function vz(b,c){b=b|0;c=c|0;var d=0;a:do if(!(wz(b)|0))if((((a[b>>0]|0)==116?(a[b+1>>0]|0)==116:0)?(a[b+2>>0]|0)==99:0)?(a[b+3>>0]|0)==102:0){d=Ny(b+4|0)|0;if((d|0)<131072)switch(d|0){case 65536:break;default:{b=-1;break a}}else switch(d|0){case 131072:break;default:{b=-1;break a}}if((xz(b+8|0)|0)>(c|0))b=Ny(b+12+(c<<2)|0)|0;else b=-1}else b=-1;else b=((c|0)!=0)<<31>>31;while(0);return b|0}function wz(b){b=b|0;var c=0;a:do switch(a[b>>0]|0){case 49:{if(((a[b+1>>0]|0)==0?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}case 116:{if(((a[b+1>>0]|0)==121?(a[b+2>>0]|0)==112:0)?(a[b+3>>0]|0)==49:0){b=1;break a}if(((a[b+1>>0]|0)==114?(a[b+2>>0]|0)==117:0)?(a[b+3>>0]|0)==101:0)b=1;else c=17;break}case 79:{if(((a[b+1>>0]|0)==84?(a[b+2>>0]|0)==84:0)?(a[b+3>>0]|0)==79:0)b=1;else c=17;break}case 0:{if(((a[b+1>>0]|0)==1?(a[b+2>>0]|0)==0:0)?(a[b+3>>0]|0)==0:0)b=1;else c=17;break}default:c=17}while(0);if((c|0)==17)b=0;return b|0}function xz(a){a=a|0;return (d[a+1>>0]|0)<<16|(d[a>>0]|0)<<24|(d[a+2>>0]|0)<<8|(d[a+3>>0]|0)|0}function yz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function zz(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)<(b|0))Dz(a,Cz(a,b)|0);c[a>>2]=b;return}function Az(a,b){a=a|0;b=b|0;if((c[a>>2]|0)>(b|0))return (c[a+8>>2]|0)+(b<<4)|0;else Bb(14314,39072,1118,14323);return 0}function Bz(a){a=a|0;a=c[a+8>>2]|0;if(a|0)Uf(a);return}function Cz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b<<4)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,c[a>>2]<<4|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Ez(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(!((d|0)<65536&(e|0)<65536))Bb(19232,18829,256,19268);h=g+-1|0;if((g|0)>1){i=0;do{j=i;i=i+1|0;c[f+(j<<3)+4>>2]=f+(i<<3)}while((i|0)!=(h|0))}else h=0;c[f+(h<<3)+4>>2]=0;c[a+12>>2]=1;c[a+16>>2]=0;c[a+28>>2]=f;j=a+32|0;c[a+24>>2]=j;c[a>>2]=d;c[a+4>>2]=e;c[a+20>>2]=g;Fz(a);b[j>>1]=0;b[a+34>>1]=0;j=a+40|0;c[a+36>>2]=j;b[j>>1]=d;b[a+42>>1]=-1;c[a+44>>2]=0;return}function Fz(a){a=a|0;var b=0;b=c[a+20>>2]|0;c[a+8>>2]=((c[a>>2]|0)+-1+b|0)/(b|0)|0;return}function Gz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+32|0;g=h;if(d>>>0<=65535)Bb(19286,14423,1585,19300);if((e+-1|0)>>>0>=65535)Bb(19321,14423,1586,19300);if((f+-1|0)>>>0<65535){Hz(g);c[g>>2]=d;b[g+4>>1]=e;b[g+6>>1]=f;f=a+60|0;Iz(f,g);l=h;return (c[f>>2]|0)+-1|0}else Bb(19350,14423,1587,19300);return 0}function Hz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+16|0;Xe(e);c[a>>2]=-1;b[a+6>>1]=0;b[a+4>>1]=0;b[a+10>>1]=-1;b[a+8>>1]=-1;g[a+12>>2]=0.0;Ze(h,0.0,0.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;c[a+24>>2]=0;l=d;return}function Iz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Kz(a,Jz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;a=e+(d*28|0)|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];return}function Jz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Kz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*28|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*28|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Lz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;g=(((v9(b)|0)+4|0)/5|0)<<2;f=vf(g)|0;Mz(b,f);e=Nz(a,f,g,c,d,e)|0;Uf(f);return e|0}function Mz(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a[b>>0]|0;if(d<<24>>24)while(1){e=$z(d)|0;f=$z(a[b+1>>0]|0)|0;g=$z(a[b+2>>0]|0)|0;h=$z(a[b+3>>0]|0)|0;e=(((((((($z(a[b+4>>0]|0)|0)*85|0)+h|0)*85|0)+g|0)*85|0)+f|0)*85|0)+e|0;a[c>>0]=e;a[c+1>>0]=e>>>8;a[c+2>>0]=e>>>16;a[c+3>>0]=e>>>24;b=b+5|0;d=a[b>>0]|0;if(!(d<<24>>24))break;else c=c+4|0}return}function Nz(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+112|0;j=n;k=Oz(d)|0;m=vf(k)|0;Pz(m,d,e);if(!g)dx(j);else{i=j;d=g;e=i+100|0;do{c[i>>2]=c[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0))}if(!(c[j>>2]|0)){a[j+8>>0]=1;m=Qz(b,m,k,f,j,h)|0;l=n;return m|0}else Bb(31384,14423,1568,31408);return 0}function Oz(a){a=a|0;return (d[a+9>>0]|0)<<16|(d[a+8>>0]|0)<<24|(d[a+10>>0]|0)<<8|(d[a+11>>0]|0)|0}function Pz(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;do if((d[e+1>>0]<<16|d[e>>0]<<24|d[e+3>>0]|d[e+2>>0]<<8|0)==1471938560?(d[e+5>>0]<<16|d[e+4>>0]<<24|d[e+7>>0]|d[e+6>>0]<<8|0)==0:0){g=Oz(e)|0;c[11364]=e;c[11365]=e+f;g=b+g|0;c[11366]=g;c[11367]=b;c[11368]=b;f=e+16|0;while(1){b=Yz(f)|0;if((b|0)==(f|0))break;if((c[11368]|0)>>>0>g>>>0){h=11;break}else f=b}if((h|0)==11)Bb(31608,14423,2834,31593);if((a[f>>0]|0)==5?(a[f+1>>0]|0)==-6:0){if((c[11368]|0)==(g|0))break;Bb(31566,14423,2824,31593)}Bb(18388,14423,2830,31593)}while(0);return}function Qz(a,b,d,e,f,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+112|0;j=m;if(!f)dx(j);else{k=j;i=k+100|0;do{c[k>>2]=c[f>>2];k=k+4|0;f=f+4|0}while((k|0)<(i|0))}if(c[j>>2]|0)Bb(31384,14423,1552,31439);c[j>>2]=b;c[j+4>>2]=d;g[j+16>>2]=e;if(h|0)c[j+48>>2]=h;k=Rz(a,j)|0;l=m;return k|0}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;e=j+5|0;f=j;h=j+4|0;if(c[d>>2]|0?(c[d+4>>2]|0)>0:0){if(!(+g[d+16>>2]>0.0))Bb(31523,14423,1471,31515);i=b+48|0;if(a[d+52>>0]|0){if(gm(i)|0)Bb(31551,14423,1477,31515)}else{k=vf(84)|0;a[e>>0]=a[h>>0]|0;h=Fg(84,e,k)|0;Sz(h);c[f>>2]=h;dm(i,f)}f=b+72|0;Tz(f,d);f=Uz(f)|0;h=f+96|0;if(!(c[h>>2]|0))c[h>>2]=c[(hm(i)|0)>>2];e=f+8|0;if(!(a[e>>0]|0)){k=f+4|0;i=vf(c[k>>2]|0)|0;c[f>>2]=i;a[e>>0]=1;qca(i|0,c[d>>2]|0,c[k>>2]|0)|0}mx(b);l=j;return c[h>>2]|0}Bb(31460,14423,1470,31515);return 0}function Sz(a){a=a|0;var d=0,e=0,f=0,h=0;d=l;l=l+16|0;h=d;e=a+8|0;Xe(e);Xz(a+16|0);Wr(a+28|0);cs(a+40|0);g[a+4>>2]=1.0;b[a+60>>1]=63;Ze(h,0.0,1.0);f=c[h+4>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=f;qx(a);l=d;return}function Tz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;if((d|0)==(c[a+4>>2]|0)){Wz(a,Vz(a,d+1|0)|0);d=c[a>>2]|0}e=c[a+8>>2]|0;c[a>>2]=d+1;e=e+(d*100|0)|0;d=b;a=e+100|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));return}function Uz(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)>0)return (c[a+8>>2]|0)+((b+-1|0)*100|0)|0;else Bb(39063,39072,1128,14585);return 0}function Vz(a,b){a=a|0;b=b|0;a=c[a+4>>2]|0;if(!a)a=8;else a=((a|0)/2|0)+a|0;return ((a|0)>(b|0)?a:b)|0}function Wz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+4|0;if((c[f>>2]|0)<(b|0)){g=vf(b*100|0)|0;e=a+8|0;d=c[e>>2]|0;if(!d)a=e;else{qca(g|0,d|0,(c[a>>2]|0)*100|0)|0;a=e;d=c[e>>2]|0}Uf(d);c[a>>2]=g;c[f>>2]=b}return}function Xz(a){a=a|0;c[a+4>>2]=0;c[a>>2]=0;c[a+8>>2]=0;return}function Yz(b){b=b|0;var e=0,f=0;e=a[b>>0]|0;f=e&255;a:do if((e&255)>31){if(e<<24>>24<0){Zz((c[11368]|0)+(0-(d[b+1>>0]|0))+-1|0,f+-127|0);b=b+2|0;break}if((e&255)>63){Zz((c[11368]|0)+(16383-(f<<8|(d[b+1>>0]|0)))|0,(d[b+2>>0]|0)+1|0);b=b+3|0;break}else{_z(b+1|0,f+-31|0);b=b+((d[b>>0]|0)+-30)|0;break}}else{if((e&255)>23){Zz((c[11368]|0)+(1572863-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,(d[b+3>>0]|0)+1|0);b=b+4|0;break}if((e&255)>15){Zz((c[11368]|0)+(1048575-(f<<16|(d[b+2>>0]|0)|(d[b+1>>0]|0)<<8))|0,((d[b+3>>0]|0)<<8|(d[b+4>>0]|0))+1|0);b=b+5|0;break}if((e&255)>7){e=b+1|0;_z(b+2|0,(f<<8|(d[e>>0]|0))+-2047|0);b=b+(((d[b>>0]|0)<<8|(d[e>>0]|0))+-2045)|0;break}switch(e<<24>>24){case 7:{e=b+1|0;f=b+2|0;_z(b+3|0,((d[e>>0]|0)<<8|(d[f>>0]|0))+1|0);b=b+(((d[e>>0]|0)<<8|(d[f>>0]|0))+4)|0;break a}case 6:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,(d[b+4>>0]|0)+1|0);b=b+5|0;break a}case 4:{Zz((c[11368]|0)+~((d[b+1>>0]|0)<<16|(d[b+3>>0]|0)|(d[b+2>>0]|0)<<8)|0,((d[b+4>>0]|0)<<8|(d[b+5>>0]|0))+1|0);b=b+6|0;break a}default:break a}}while(0);return b|0}function Zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[11368]|0;g=c[11366]|0;if((f+d|0)>>>0>g>>>0)Bb(31635,14423,2739,31679);if((c[11367]|0)>>>0<=b>>>0){if(d|0?(e=d+-1|0,g=a[b>>0]|0,c[11368]=f+1,a[f>>0]=g,e|0):0){d=c[11368]|0;do{b=b+1|0;e=e+-1|0;g=d;d=d+1|0;a[g>>0]=a[b>>0]|0}while((e|0)!=0);c[11368]=d}}else c[11368]=g+1;return}function _z(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[11368]|0;d=c[11366]|0;if((e+b|0)>>>0>d>>>0)Bb(31635,14423,2747,31670);if((c[11364]|0)>>>0>a>>>0)b=1;else{qca(e|0,a|0,b|0)|0;d=c[11368]|0}c[11368]=d+b;return}function $z(a){a=a|0;return (a<<24>>24)-(a<<24>>24>91?36:35)|0}function aA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;m=a+20|0;h=c[m>>2]|0;if(!h){c[i>>2]=0;xx(a,i,0,0,0);j=c[i>>2]|0;if(j){i=a+24|0;h=a+28|0;k=vf(O(c[i>>2]<<2,c[h>>2]|0)|0)|0;c[m>>2]=k;i=O(c[h>>2]|0,c[i>>2]|0)|0;h=k;if((i|0)>0)while(1){c[k>>2]=(d[j>>0]|0)<<24|16777215;if((i|0)>1){k=k+4|0;j=j+1|0;i=i+-1|0}else break}}else h=c[m>>2]|0}c[b>>2]=h;if(e|0)c[e>>2]=c[a+24>>2];if(f|0)c[f>>2]=c[a+28>>2];if(g|0)c[g>>2]=4;l=n;return}function bA(a,b,d,f,h,i){a=a|0;b=b|0;d=d|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;m=q+24|0;n=q+8|0;o=q;p=q+16|0;do if(b>>>0<=6?(c[a>>2]&2|0)==0:0){k=ay(a+60|0,c[a+84>>2]|0)|0;if((c[k>>2]|0)==-2147483648){Ze(n,+(e[k+8>>1]|0),+(e[k+10>>1]|0));ww(m,1512+(b*24|0)|0,n);j=1512+(b*24|0)+8|0;r=c[j>>2]|0;j=c[j+4>>2]|0;k=n;c[k>>2]=r;c[k+4>>2]=j;k=f;c[k>>2]=r;c[k+4>>2]=j;k=1512+(b*24|0)+16|0;f=c[k+4>>2]|0;j=d;c[j>>2]=c[k>>2];c[j+4>>2]=f;j=a+32|0;cA(o,m,j);d=o;f=c[d+4>>2]|0;k=h;c[k>>2]=c[d>>2];c[k+4>>2]=f;ww(p,m,n);cA(o,p,j);k=o;f=c[k+4>>2]|0;d=h+8|0;c[d>>2]=c[k>>2];c[d+4>>2]=f;g[m>>2]=+g[m>>2]+91.0;cA(o,m,j);d=o;f=c[d+4>>2]|0;h=i;c[h>>2]=c[d>>2];c[h+4>>2]=f;ww(p,m,n);cA(o,p,j);p=c[o+4>>2]|0;j=i+8|0;c[j>>2]=c[o>>2];c[j+4>>2]=p;j=1;break}else Bb(15275,14423,1628,31690)}else j=0;while(0);l=q;return j|0}function cA(a,b,c){a=a|0;b=b|0;c=c|0;Ze(a,+g[b>>2]*+g[c>>2],+g[b+4>>2]*+g[c+4>>2]);return}function dA(b,d,e,f,h,i,j,k){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y;if(!j)j=i+(v9(i)|0)|0;r=e/+g[d>>2];Ze(b,0.0,0.0);s=h>0.0;a:do if(j>>>0>i>>>0){t=b+4|0;u=d+28|0;v=d+56|0;n=0.0;o=0;while(1){b:do if(s){if(!o){o=Sw(d,r,i,j,h-n)|0;o=(o|0)==(i|0)?o+1|0:o}if(i>>>0>>0)x=14;else{if(+g[b>>2]>2]=n;g[t>>2]=+g[t>>2]+e;while(1){if(i>>>0>=j>>>0){n=0.0;o=0;break b}p=a[i>>0]|0;q=Tw(p<<24>>24)|0;i=q|p<<24>>24==10?i+1|0:i;if(!q){n=0.0;o=0;break}}}}else x=14;while(0);if((x|0)==14){x=0;q=a[i>>0]|0;p=q<<24>>24;c[w>>2]=p;if(q<<24>>24<=-1){q=i+(Bf(w,i,j)|0)|0;p=c[w>>2]|0;if(!p){i=q;break}}else q=i+1|0;c:do if(p>>>0<32){switch(p|0){case 13:break c;case 10:break;default:{x=20;break c}}g[b>>2]=+Zv(+g[b>>2],n);g[t>>2]=+g[t>>2]+e;n=0.0}else x=20;while(0);if((x|0)==20){x=0;if((p|0)<(c[u>>2]|0))p=yu(u,p)|0;else p=v;m=n+r*+g[p>>2];if(!(m>=f))n=m;else break}i=q}if(i>>>0>=j>>>0)break a}}else n=0.0;while(0);if(+g[b>>2]>2]=n;j=b+4|0;m=+g[j>>2];if(n>0.0|m==0.0)g[j>>2]=m+e;if(k|0)c[k>>2]=i;l=y;return}function eA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;var h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+48|0;h=q+24|0;i=q+8|0;o=q+32|0;p=q+16|0;n=q;g[h>>2]=d;g[i>>2]=e;if(!(e==d)){if(d>e){fA(h,i);d=+g[h>>2];e=+g[i>>2]}m=b+8|0;k=+gA(+g[b>>2],+g[m>>2],d);i=b+4|0;Ze(o,k,+g[i>>2]);k=+gA(+g[b>>2],+g[m>>2],e);h=b+12|0;Ze(p,k,+g[h>>2]);if(f==0.0)Hw(a,o,p,c,0.0,15);else{r=+g[b>>2];k=+Zw(+Ew((+g[m>>2]-r)*.5,(+g[h>>2]-+g[i>>2])*.5)+-1.0,0.0,f);j=1.0/k;f=+g[o>>2];e=+hA(1.0-j*(f-r));d=+hA(1.0-j*(+g[p>>2]-r));f=+Zv(f,r+k);do if(!(e==d))if(e==0.0&d==1.5707963705062866){Ze(n,f,+g[p+4>>2]-k);yw(a,n,k,3,6);Ze(n,f,k+ +g[o+4>>2]);yw(a,n,k,6,9);break}else{Ze(n,f,+g[p+4>>2]-k);zw(a,n,k,3.1415927410125732-d,3.1415927410125732-e,3);Ze(n,f,k+ +g[o+4>>2]);zw(a,n,k,e+3.1415927410125732,d+3.1415927410125732,3);break}else{Ze(n,f,+g[p+4>>2]);zj(a,n);Ze(n,f,+g[o+4>>2]);zj(a,n)}while(0);e=+g[p>>2];do if(e>k+ +g[b>>2]){r=+g[m>>2];f=+hA(1.0-j*(r-e));d=+hA(1.0-j*(r-+g[o>>2]));e=+Ew(e,r-k);if(f==d){Ze(n,e,+g[o+4>>2]);zj(a,n);Ze(n,e,+g[p+4>>2]);zj(a,n);break}if(f==0.0&d==1.5707963705062866){Ze(n,e,k+ +g[o+4>>2]);yw(a,n,k,9,12);Ze(n,e,+g[p+4>>2]-k);yw(a,n,k,0,3);break}else{Ze(n,e,k+ +g[o+4>>2]);zw(a,n,k,-d,-f,3);Ze(n,e,+g[p+4>>2]-k);zw(a,n,k,f,d,3);break}}while(0);Fl(a,c)}}l=q;return}function fA(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function gA(a,b,c){a=+a;b=+b;c=+c;return +((b-a)*c+a)}function hA(a){a=+a;if(!(a<=0.0))if(!(a>=1.0))a=+H(+a);else a=0.0;else a=1.5707963705062866;return +a}function iA(a){a=a|0;return}function jA(){return}function kA(a){a=a|0;return}function lA(){mA();nA();oA();pA();qA();rA();sA();tA();uA();vA();wA();xA();yA();zA();AA();BA();CA();DA();EA();return}function mA(){C7(0);return}function nA(){$6(0);return}function oA(){r6(0);return}function pA(){d5(0);return}function qA(){A4(0);return}function rA(){A3(0);return}function sA(){V2(0);return}function tA(){p$(0);return}function uA(){v_(0);return}function vA(){_Z(0);return}function wA(){XY(0);return}function xA(){BW(0);return}function yA(){WU(0);return}function zA(){HU(0);return}function AA(){GU(45536);return}function BA(){GU(45540);return}function CA(){GU(45528);return}function DA(){GU(45532);return}function EA(){FA(0);return}function FA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+32|0;d=g+12|0;e=g;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;f=GA(31712)|0;if(f>>>0>4294967279)iba(e);if(f>>>0<11){a[e+11>>0]=f;b=e}else{h=f+16&-16;b=gba(h)|0;c[e>>2]=b;c[e+8>>2]=h|-2147483648;c[e+4>>2]=f}HA(b,31712,f)|0;a[d>>0]=0;IA(b+f|0,d);JA(31721,e);kba(e);c[d>>2]=20;KA(31735,d);c[d>>2]=2;KA(31750,d);c[d>>2]=0;KA(31764,d);c[d>>2]=8;KA(31784,d);c[d>>2]=16;KA(31803,d);h=MA(9)|0;a[d>>0]=a[g+29>>0]|0;NA(31823,h,d);QA(31837,PA(10)|0);h=MA(11)|0;a[d>>0]=a[g+28>>0]|0;NA(31852,h,d);QA(31870,PA(12)|0);h=MA(13)|0;a[d>>0]=a[g+27>>0]|0;NA(31888,h,d);h=MA(14)|0;a[d>>0]=a[g+26>>0]|0;NA(31894,h,d);h=MA(15)|0;a[d>>0]=a[g+25>>0]|0;NA(31903,h,d);WA(31915,2);WA(31924,YA(3)|0);WA(31931,4);QA(31940,PA(16)|0);QA(31955,PA(17)|0);QA(31973,PA(18)|0);cB(31989,bB(19)|0);cB(32007,bB(20)|0);WA(32024,5);gB(32038,fB(21)|0);h=iB(22)|0;a[d>>0]=a[g+24>>0]|0;jB(32049,h,d);h=iB(23)|0;a[d>>0]=a[g+23>>0]|0;jB(32065,h,d);h=iB(24)|0;a[d>>0]=a[g+22>>0]|0;jB(32084,h,d);oB(32101,nB(9)|0);WA(32107,6);rB(32111,qB(1)|0);WA(32122,7);uB(32131,tB(3)|0);uB(32151,tB(4)|0);wB(32173,1);uB(32200,tB(5)|0);uB(32226,tB(6)|0);wB(32252,2);h=MA(25)|0;a[d>>0]=a[g+21>>0]|0;NA(32280,h,d);uB(32298,tB(7)|0);uB(32311,tB(8)|0);wB(32325,3);wB(32340,4);CB(32356,1);CB(32374,2);DB(32392,1);GB(32411,FB(2)|0);JB(32428,IB(9)|0);MB(32446,LB(5)|0);QA(32475,PA(26)|0);OB(32500,10);WA(32523,8);DB(32542,2);JB(32563,IB(11)|0);JB(32576,IB(12)|0);OB(32590,SB(13)|0);WA(32609,YA(9)|0);WB(32624,VB(3)|0);WB(32641,VB(4)|0);_B(32659,ZB(5)|0);cB(32682,bB(27)|0);wB(32701,5);wB(32712,6);wB(32723,7);wB(32737,8);DB(32751,3);DB(32762,4);DB(32773,5);aC(32787,1);QA(32805,PA(28)|0);dC(32821,MA(29)|0);QA(32837,PA(30)|0);WA(32846,YA(10)|0);iC(32854,hC(14)|0);jC(32869,31);iC(32883,hC(15)|0);jC(32896,32);nC(32908,mC(16)|0);h=MA(33)|0;a[d>>0]=a[g+20>>0]|0;NA(32926,h,d);wB(32934,9);uB(32946,tB(17)|0);sC(32969,rC(4)|0);DB(32981,6);WA(32995,11);wB(33008,10);DB(33022,7);WA(33038,12);tC(33053,34);WA(33076,13);tC(33098,35);WA(33115,14);WA(33131,15);aC(33141,2);WA(33150,16);WA(33158,17);QA(33166,PA(36)|0);DB(33172,8);DB(33179,9);WA(33188,18);WA(33199,19);uB(33208,tB(18)|0);wB(33221,11);wB(33235,12);wC(33249,37);DB(33262,10);DB(33276,11);uB(33290,tB(19)|0);uB(33308,tB(20)|0);wC(33327,38);WA(33346,20);wB(33370,13);wB(33388,14);wB(33417,15);wB(33432,16);BC(33458,AC(6)|0);WA(33466,21);CC(33477,3);DC(33492,1);EC(33507,1);DC(33522,2);EC(33538,2);CC(33554,4);QA(33570,PA(39)|0);WA(33577,22);IC(33583,HC(3)|0);cB(33589,bB(40)|0);cB(33605,bB(41)|0);cB(33610,bB(42)|0);OC(33616,NC(21)|0);OC(33628,NC(22)|0);cB(33641,bB(43)|0);cB(33654,bB(44)|0);cB(33668,bB(45)|0);cB(33680,bB(46)|0);WC(33693,VC(23)|0);WC(33703,VC(24)|0);cB(33714,bB(47)|0);cB(33725,bB(48)|0);WA(33737,23);aD(33744,$C(5)|0);dD(33751,cD(4)|0);aD(33763,$C(6)|0);hD(33779,gD(4)|0);kD(33785,jD(1)|0);aD(33797,$C(7)|0);oD(33806,nD(10)|0);rD(33820,qD(11)|0);uD(33832,tD(1)|0);uD(33842,tD(2)|0);yD(33856,xD(1)|0);oB(33868,nB(12)|0);WA(33879,24);CD(33888,BD(1)|0);FD(33894,ED(1)|0);ID(33904,HD(2)|0);ID(33915,HD(3)|0);ID(33926,HD(4)|0);ND(33937,MD(1)|0);QD(33953,PD(1)|0);QD(33961,PD(2)|0);QD(33970,PD(3)|0);QD(33979,PD(4)|0);WD(33988,VD(1)|0);h=YD(1)|0;a[d>>0]=a[g+19>>0]|0;ZD(34002,h,d);aE(34012,$D(2)|0);dE(34031,cE(1)|0);gE(34042,fE(2)|0);gE(34054,fE(3)|0);gE(34066,fE(4)|0);lE(34078,kE(2)|0);oB(34087,nB(13)|0);oB(34097,nB(14)|0);oB(34107,nB(15)|0);rE(34117,qE(1)|0);rE(34129,qE(2)|0);rE(34142,qE(3)|0);rE(34155,qE(4)|0);xE(34168,wE(1)|0);AE(34180,zE(3)|0);AE(34190,zE(4)|0);AE(34201,zE(5)|0);AE(34212,zE(6)|0);GE(34223,FE(1)|0);JE(34236,IE(2)|0);oB(34247,nB(16)|0);oB(34258,nB(17)|0);oB(34269,nB(18)|0);PE(34282,OE(5)|0);PE(34295,OE(6)|0);jC(34307,49);TE(34327,SE(8)|0);WE(34336,VE(19)|0);QA(34347,PA(50)|0);WA(34356,25);WA(34364,26);wB(34386,17);OB(34412,25);oB(34432,nB(20)|0);PE(34449,OE(7)|0);CD(34460,BD(7)|0);aD(34468,$C(9)|0);WA(34482,27);cF(34496,bF(26)|0);cB(34502,bB(51)|0);WA(34513,28);WA(34526,29);CB(34537,5);WA(34554,30);CB(34569,6);WA(34582,31);gF(34593,fF(10)|0);WA(34603,32);jF(34611,iF(8)|0);cB(34620,bB(52)|0);nF(34630,mF(11)|0);dD(34651,cD(5)|0);oB(34662,nB(21)|0);nF(34678,mF(12)|0);tF(34700,sF(22)|0);nF(34724,mF(13)|0);WA(34746,33);dD(34755,cD(6)|0);WA(34767,34);jC(34785,53);iC(34794,hC(27)|0);jC(34804,54);WA(34819,35);WA(34829,36);cB(34840,bB(55)|0);yF(34848,14);BF(34868,AF(9)|0);WA(34887,37);CB(34905,7);EF(34925,DF(7)|0);WA(34947,38);HF(34965,GF(8)|0);WA(34978,39);WA(34990,40);jC(35010,56);IF(35031,7);CB(35045,8);CB(35058,9);IF(35072,8);CB(35086,10);CB(35100,11);CB(35117,12);CB(35133,13);uB(35150,tB(28)|0);uB(35165,tB(29)|0);uB(35180,tB(30)|0);WA(35196,41);IF(35216,9);IF(35232,10);OF(35248,NF(15)|0);wB(35262,18);CC(35270,14);h=MA(57)|0;a[d>>0]=a[g+18>>0]|0;NA(35284,h,d);h=MA(58)|0;a[d>>0]=a[g+17>>0]|0;NA(35303,h,d);TF(35325,SF(31)|0);WF(35343,VF(1)|0);ZF(35356,YF(1)|0);_F(35373,23);WA(35389,42);bG(35403,aG(9)|0);cG(35427,11);fG(35451,eG(1)|0);fG(35472,eG(2)|0);hG(35493,12);IF(35505,13);iG(35515,16);IF(35528,14);jG(35542,1);IF(35562,15);CB(35574,15);iG(35589,17);IF(35604,16);IF(35625,17);kG(35641,1);nG(35657,mG(24)|0);qG(35677,pG(18)|0);uB(35693,tB(32)|0);uB(35705,tB(33)|0);vG(35738,uG(1)|0);jC(35756,59);CC(35776,16);jC(35791,60);tC(35806,61);tC(35829,62);h=xG(34)|0;a[d>>0]=a[g+16>>0]|0;yG(35849,h,d);QA(35858,PA(63)|0);gB(35866,fB(64)|0);QA(35883,PA(65)|0);l=g;return}function GA(a){a=a|0;return v9(a)|0}function HA(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qca(a|0,b|0,c|0)|0;return a|0}function IA(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function JA(a,b){a=a|0;b=b|0;var c=0;c=DU()|0;Vb(a|0,c|0,EU(wJ(b)|0)|0);return}function KA(a,b){a=a|0;b=b|0;var c=0;c=AU()|0;Vb(a|0,c|0,BU(RI(b)|0)|0);return}function LA(a){a=a|0;zU(a);return}function MA(a){a=a|0;return a|0}function NA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=xU(d)|0;d=yU(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function OA(a){a=a|0;wU(a);return}function PA(a){a=a|0;return a|0}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sU(d)|0;d=tU(d)|0;Yb(a|0,e|0,d|0,EQ()|0,35,b|0);l=c;return}function RA(a){a=a|0;kU(a);return}function SA(a){a=a|0;dU(a);return}function TA(a){a=a|0;XT(a);return}function UA(a){a=a|0;PT(a);return}function VA(a){a=a|0;HT(a);return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CT(d)|0;d=DT(d)|0;Yb(a|0,e|0,d|0,ET()|0,66,b|0);l=c;return}function XA(){BT();return}function YA(a){a=a|0;return a|0}function ZA(a){a=a|0;AT(a);return}function _A(a){a=a|0;zT(a);return}function $A(a){a=a|0;tT(a);return}function aB(a){a=a|0;return}function bB(a){a=a|0;return a|0}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=pT(d)|0;d=qT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,36,b|0);l=c;return}function dB(a){a=a|0;return}function eB(a){a=a|0;oT(a);return}function fB(a){a=a|0;return a|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mT(d)|0;d=EG(d)|0;Yb(a|0,e|0,d|0,tQ()|0,20,b|0);l=c;return}function hB(a){a=a|0;lT(a);return}function iB(a){a=a|0;return a|0}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=gT(d)|0;d=hT(d)|0;Yb(a|0,e|0,d|0,EQ()|0,37,b|0);l=c;return}function kB(a){a=a|0;fT(a);return}function lB(a){a=a|0;eT(a);return}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return dT(a,b,c)|0}function nB(a){a=a|0;return a|0}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$S(d)|0;d=aT(d)|0;Yb(a|0,e|0,d|0,XH()|0,10,b|0);l=c;return}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _S(a,b,c,d)|0}function qB(a){a=a|0;return a|0}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WS(d)|0;d=XS(d)|0;Yb(a|0,e|0,d|0,oK()|0,8,b|0);l=c;return}function sB(a,b){a=a|0;b=b|0;VS(a,b);return}function tB(a){a=a|0;return a|0}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=RS(d)|0;d=SS(d)|0;Yb(a|0,e|0,d|0,VG()|0,18,b|0);l=c;return}function vB(a,b){a=a|0;b=b|0;QS(a,b);return}function wB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NS(d)|0;d=RH(d)|0;Yb(a|0,e|0,d|0,OS()|0,3,b|0);l=c;return}function xB(a,b){a=a|0;b=b|0;MS(a,b);return}function yB(a,b){a=a|0;b=b|0;LS(a,b);return}function zB(a){a=a|0;KS(a);return}function AB(a,b){a=a|0;b=b|0;JS(a,b);return}function BB(a,b){a=a|0;b=b|0;IS(a,b);return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=GS(d)|0;d=PK(d)|0;Yb(a|0,e|0,d|0,tQ()|0,21,b|0);l=c;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=BS(d)|0;d=CS(d)|0;Yb(a|0,e|0,d|0,DS()|0,3,b|0);l=c;return}function EB(a,b,c){a=a|0;b=b|0;c=c|0;AS(a,b,c);return}function FB(a){a=a|0;return a|0}function GB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=wS(d)|0;d=xS(d)|0;Yb(a|0,e|0,d|0,cK()|0,6,b|0);l=c;return}function HB(a,b){a=a|0;b=b|0;vS(a,b);return}function IB(a){a=a|0;return a|0}function JB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rS(d)|0;d=sS(d)|0;Yb(a|0,e|0,d|0,lL()|0,10,b|0);l=c;return}function KB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gS(a,b,c,d);return}function LB(a){a=a|0;return a|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=bS(d)|0;d=cS(d)|0;Yb(a|0,e|0,d|0,dS()|0,4,b|0);l=c;return}function NB(a){a=a|0;aS(a);return}function OB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YR(d)|0;d=ZR(d)|0;Yb(a|0,e|0,d|0,lL()|0,11,b|0);l=c;return}function PB(a,b){a=a|0;b=b|0;XR(a,b);return}function QB(a,b){a=a|0;b=b|0;WR(a,b);return}function RB(a,b){a=a|0;b=b|0;VR(a,b);return}function SB(a){a=a|0;return a|0}function TB(){UR();return}function UB(a,b,c){a=a|0;b=b|0;c=c|0;TR(a,b,c);return}function VB(a){a=a|0;return a|0}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PR(d)|0;d=QR(d)|0;Yb(a|0,e|0,d|0,cK()|0,7,b|0);l=c;return}function XB(a,b,c){a=a|0;b=b|0;c=c|0;OR(a,b,c);return}function YB(a,b,c){a=a|0;b=b|0;c=c|0;NR(a,b,c);return}function ZB(a){a=a|0;return a|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JR(d)|0;d=KR(d)|0;Yb(a|0,e|0,d|0,cK()|0,8,b|0);l=c;return}function $B(a){a=a|0;IR(a);return}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=DR(d)|0;d=ER(d)|0;Yb(a|0,e|0,d|0,FR()|0,1,b|0);l=c;return}function bC(a){a=a|0;CR();return}function cC(a){a=a|0;BR(a);return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=xR(d)|0;d=yR(d)|0;Yb(a|0,e|0,d|0,tQ()|0,19,b|0);l=c;return}function eC(a){a=a|0;wR();return}function fC(){vR();return}function gC(a,b){a=a|0;b=b|0;uR(a,b);return}function hC(a){a=a|0;return a|0}function iC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qR(d)|0;d=rR(d)|0;Yb(a|0,e|0,d|0,lL()|0,12,b|0);l=c;return}function jC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mR(d)|0;d=nR(d)|0;Yb(a|0,e|0,d|0,EQ()|0,38,b|0);l=c;return}function kC(a,b){a=a|0;b=b|0;lR(a,b);return}function lC(a,b){a=a|0;b=b|0;dR(a,b);return}function mC(a){a=a|0;return a|0}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$Q(d)|0;d=aR(d)|0;Yb(a|0,e|0,d|0,VG()|0,19,b|0);l=c;return}function oC(a){a=a|0;TQ(a);return}function pC(a,b){a=a|0;b=b|0;SQ(a,b);return}function qC(a,b){a=a|0;b=b|0;return RQ(a,b)|0}function rC(a){a=a|0;return a|0}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NQ(d)|0;d=OQ(d)|0;Yb(a|0,e|0,d|0,nI()|0,25,b|0);l=c;return}function tC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JQ(d)|0;d=KQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,39,b|0);l=c;return}function uC(a){a=a|0;IQ(a);return}function vC(a,b){a=a|0;b=b|0;HQ(a,b);return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=CQ(d)|0;d=DQ(d)|0;Yb(a|0,e|0,d|0,EQ()|0,40,b|0);l=c;return}function xC(a,b){a=a|0;b=b|0;BQ(a,b);return}function yC(a,b){a=a|0;b=b|0;AQ(a,b);return}function zC(a,b,c){a=a|0;b=b|0;c=c|0;zQ(a,b,c);return}function AC(a){a=a|0;return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=vQ(d)|0;d=wQ(d)|0;Yb(a|0,e|0,d|0,cK()|0,9,b|0);l=c;return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sQ(d)|0;d=xL(d)|0;Yb(a|0,e|0,d|0,tQ()|0,22,b|0);l=c;return}function DC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nQ(d)|0;d=oQ(d)|0;Yb(a|0,e|0,d|0,pQ()|0,1,b|0);l=c;return}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iQ(d)|0;d=jQ(d)|0;Yb(a|0,e|0,d|0,kQ()|0,1,b|0);l=c;return}function FC(a){a=a|0;hQ(a);return}function GC(a){a=a|0;return gQ(a)|0}function HC(a){a=a|0;return a|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cQ(d)|0;d=dQ(d)|0;Yb(a|0,e|0,d|0,VG()|0,20,b|0);l=c;return}function JC(a){a=a|0;bQ(a);return}function KC(a){a=a|0;aQ(a);return}function LC(a){a=a|0;$P(a);return}function MC(a,b){a=a|0;b=b|0;_P(a,b);return}function NC(a){a=a|0;return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=WP(d)|0;d=XP(d)|0;Yb(a|0,e|0,d|0,lL()|0,13,b|0);l=c;return}function PC(a,b){a=a|0;b=b|0;VP(a,b);return}function QC(a){a=a|0;UP(a);return}function RC(a){a=a|0;TP(a);return}function SC(a){a=a|0;SP(a);return}function TC(a){a=a|0;RP(a);return}function UC(a,b){a=a|0;b=b|0;QP(a,b);return}function VC(a){a=a|0;return a|0}function WC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=MP(d)|0;d=NP(d)|0;Yb(a|0,e|0,d|0,lL()|0,14,b|0);l=c;return}function XC(a,b){a=a|0;b=b|0;LP(a,b);return}function YC(a){a=a|0;KP(a);return}function ZC(a){a=a|0;JP(a);return}function _C(a,b){a=a|0;b=b|0;return IP(a,b)|0}function $C(a){a=a|0;return a|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EP(d)|0;d=FP(d)|0;Yb(a|0,e|0,d|0,nI()|0,26,b|0);l=c;return}function bD(a){a=a|0;return DP(a)|0}function cD(a){a=a|0;return a|0}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=zP(d)|0;d=AP(d)|0;Yb(a|0,e|0,d|0,VG()|0,21,b|0);l=c;return}function eD(a,b){a=a|0;b=b|0;return yP(a,b)|0}function fD(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xP(b,c,d,e,f);return}function gD(a){a=a|0;return a|0}function hD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sP(d)|0;d=tP(d)|0;Yb(a|0,e|0,d|0,uP()|0,1,b|0);l=c;return}function iD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return rP(b,c,d,e,f,g)|0}function jD(a){a=a|0;return a|0}function kD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nP(d)|0;d=oP(d)|0;Yb(a|0,e|0,d|0,bN()|0,1,b|0);l=c;return}function lD(a,b){a=a|0;b=b|0;return mP(a,b)|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;return aP(a,b,c)|0}function nD(a){a=a|0;return a|0}function oD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YO(d)|0;d=ZO(d)|0;Yb(a|0,e|0,d|0,XH()|0,11,b|0);l=c;return}function pD(a,b,c){a=a|0;b=b|0;c=c|0;return XO(a,b,c)|0}function qD(a){a=a|0;return a|0}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TO(d)|0;d=UO(d)|0;Yb(a|0,e|0,d|0,XH()|0,12,b|0);l=c;return}function sD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;QO(a,b,c,d,e,f,g,h,i);return}function tD(a){a=a|0;return a|0}function uD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=LO(d)|0;d=MO(d)|0;Yb(a|0,e|0,d|0,NO()|0,1,b|0);l=c;return}function vD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;zO(a,b,c,d,e,f,g,h,i);return}function wD(a,b,c){a=+a;b=b|0;c=c|0;yO(a,b,c);return}function xD(a){a=a|0;return a|0}function yD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tO(d)|0;d=uO(d)|0;Yb(a|0,e|0,d|0,vO()|0,2,b|0);l=c;return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;return sO(a,b,c)|0}function AD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pO(a,b,c,d,e)|0}function BD(a){a=a|0;return a|0}function CD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lO(d)|0;d=mO(d)|0;Yb(a|0,e|0,d|0,nM()|0,3,b|0);l=c;return}function DD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return kO(a,b,c,d,e,f,g)|0}function ED(a){a=a|0;return a|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gO(d)|0;d=hO(d)|0;Yb(a|0,e|0,d|0,cO()|0,1,b|0);l=c;return}function GD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return fO(a,b,c,d,e,f,g)|0}function HD(a){a=a|0;return a|0}function ID(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aO(d)|0;d=bO(d)|0;Yb(a|0,e|0,d|0,cO()|0,2,b|0);l=c;return}function JD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return $N(a,b,c,d,e,f,g)|0}function KD(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;return _N(a,b,c,d,e,f,g)|0}function LD(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;return ZN(a,b,c,d,e,f,g,h,i)|0}function MD(a){a=a|0;return a|0}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UN(d)|0;d=VN(d)|0;Yb(a|0,e|0,d|0,WN()|0,1,b|0);l=c;return}function OD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return TN(a,b,c,d,e,f)|0}function PD(a){a=a|0;return a|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ON(d)|0;d=PN(d)|0;Yb(a|0,e|0,d|0,QN()|0,1,b|0);l=c;return}function RD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return NN(a,b,c,d,e,f)|0}function SD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return MN(a,b,c,d,e,f)|0}function TD(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;return LN(a,b,c,d,e,f)|0}function UD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;return KN(a,b,c,d,e,f,g,h)|0}function VD(a){a=a|0;return a|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=FN(d)|0;d=GN(d)|0;Yb(a|0,e|0,d|0,HN()|0,1,b|0);l=c;return}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;return CN(a,b,c,d,e,f)|0}function YD(a){a=a|0;return a|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=yN(d)|0;d=zN(d)|0;Yb(a|0,e|0,d|0,_L()|0,3,b|0);l=c;return}function _D(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return eN(a,b,c,d,e,f,g)|0}function $D(a){a=a|0;return a|0}function aE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=$M(d)|0;d=aN(d)|0;Yb(a|0,e|0,d|0,bN()|0,2,b|0);l=c;return}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;return _M(a,b,c,d,e,f)|0}function cE(a){a=a|0;return a|0}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VM(d)|0;d=WM(d)|0;Yb(a|0,e|0,d|0,XM()|0,1,b|0);l=c;return}function eE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UM(a,b,c,d)|0}function fE(a){a=a|0;return a|0}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QM(d)|0;d=RM(d)|0;Yb(a|0,e|0,d|0,oK()|0,9,b|0);l=c;return}function hE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return PM(a,b,c,d)|0}function iE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OM(a,b,c,d)|0}function jE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return NM(a,b,c,d,e)|0}function kE(a){a=a|0;return a|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JM(d)|0;d=KM(d)|0;Yb(a|0,e|0,d|0,nM()|0,4,b|0);l=c;return}function mE(a,b,c){a=a|0;b=b|0;c=c|0;return IM(a,b,c)|0}function nE(a,b,c){a=a|0;b=b|0;c=c|0;return HM(a,b,c)|0}function oE(a,b,c){a=a|0;b=b|0;c=c|0;return GM(a,b,c)|0}function pE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return FM(a,b,c,d,e,f)|0}function qE(a){a=a|0;return a|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AM(d)|0;d=BM(d)|0;Yb(a|0,e|0,d|0,CM()|0,2,b|0);l=c;return}function sE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return zM(a,b,c,d,e,f)|0}function tE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return yM(a,b,c,d,e,f)|0}function uE(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;return xM(a,b,c,d,e,f)|0}function vE(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;return wM(a,b,c,d)|0}function wE(a){a=a|0;return a|0}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=rM(d)|0;d=sM(d)|0;Yb(a|0,e|0,d|0,tM()|0,1,b|0);l=c;return}function yE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return qM(a,b,c,d,e)|0}function zE(a){a=a|0;return a|0}function AE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lM(d)|0;d=mM(d)|0;Yb(a|0,e|0,d|0,nM()|0,5,b|0);l=c;return}function BE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kM(a,b,c,d,e)|0}function CE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jM(a,b,c,d,e)|0}function DE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return iM(a,b,c,d,e)|0}function EE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;return hM(a,b,c,d,e,f,g)|0}function FE(a){a=a|0;return a|0}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cM(d)|0;d=dM(d)|0;Yb(a|0,e|0,d|0,eM()|0,1,b|0);l=c;return}function HE(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 bM(a,b,c,d,e,f)|0}function IE(a){a=a|0;return a|0}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YL(d)|0;d=ZL(d)|0;Yb(a|0,e|0,d|0,_L()|0,4,b|0);l=c;return}function KE(a,b,c){a=a|0;b=b|0;c=c|0;return XL(a,b,c)|0}function LE(a,b,c){a=a|0;b=b|0;c=c|0;return WL(a,b,c)|0}function ME(a,b,c){a=a|0;b=b|0;c=c|0;return VL(a,b,c)|0}function NE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return UL(a,b,c)|0}function OE(a){a=a|0;return a|0}function PE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=QL(d)|0;d=RL(d)|0;Yb(a|0,e|0,d|0,oK()|0,10,b|0);l=c;return}function QE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OL(a,b,c,d)|0}function RE(a,b){a=a|0;b=b|0;return NL(a,b)|0}function SE(a){a=a|0;return a|0}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=JL(d)|0;d=KL(d)|0;Yb(a|0,e|0,d|0,nI()|0,27,b|0);l=c;return}function UE(a,b,c){a=a|0;b=b|0;c=c|0;return IL(a,b,c)|0}function VE(a){a=a|0;return a|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=EL(d)|0;d=FL(d)|0;Yb(a|0,e|0,d|0,XH()|0,13,b|0);l=c;return}function XE(a){a=a|0;DL(a);return}function YE(a,b,c){a=a|0;b=b|0;c=c|0;return CL(a,b,c)|0}function ZE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BL(a,b,c,d)|0}function _E(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sL(a,b,c,d,e)|0}function $E(a,b){a=a|0;b=b|0;return rL(a,b)|0}function aF(a,b){a=a|0;b=b|0;oL(a,b);return}function bF(a){a=a|0;return a|0}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=jL(d)|0;d=kL(d)|0;Yb(a|0,e|0,d|0,lL()|0,15,b|0);l=c;return}function dF(a){a=a|0;iL(a);return}function eF(a,b){a=a|0;b=b|0;return hL(a,b)|0}function fF(a){a=a|0;return a|0}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=dL(d)|0;d=eL(d)|0;Yb(a|0,e|0,d|0,nI()|0,28,b|0);l=c;return}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return cL(a,b,c,d)|0}function iF(a){a=a|0;return a|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=_K(d)|0;d=$K(d)|0;Yb(a|0,e|0,d|0,oK()|0,11,b|0);l=c;return}function kF(a){a=a|0;ZK(a);return}function lF(a,b){a=a|0;b=b|0;return YK(a,b)|0}function mF(a){a=a|0;return a|0}function nF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=UK(d)|0;d=VK(d)|0;Yb(a|0,e|0,d|0,nI()|0,29,b|0);l=c;return}function oF(a){a=a|0;return TK(a)|0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;return GK(a,b,c)|0}function qF(a,b){a=a|0;b=b|0;return FK(a,b)|0}function rF(a,b,c){a=a|0;b=b|0;c=c|0;return EK(a,b,c)|0}function sF(a){a=a|0;return a|0}function tF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=AK(d)|0;d=BK(d)|0;Yb(a|0,e|0,d|0,XH()|0,14,b|0);l=c;return}function uF(a,b){a=a|0;b=b|0;return zK(a,b)|0}function vF(a){a=a|0;return yK(a)|0}function wF(a,b){a=a|0;b=b|0;xK(a,b);return}function xF(a){a=a|0;wK(a);return}function yF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=sK(d)|0;d=tK(d)|0;Yb(a|0,e|0,d|0,nI()|0,30,b|0);l=c;return}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rK();return 0}function AF(a){a=a|0;return a|0}function BF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=mK(d)|0;d=nK(d)|0;Yb(a|0,e|0,d|0,oK()|0,12,b|0);l=c;return}function CF(a,b,c){a=a|0;b=b|0;c=c|0;kK(a);return}function DF(a){a=a|0;return a|0}function EF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=gK(d)|0;d=hK(d)|0;Yb(a|0,e|0,d|0,nI()|0,31,b|0);l=c;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;fK(a,b,c);return}function GF(a){a=a|0;return a|0}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aK(d)|0;d=bK(d)|0;Yb(a|0,e|0,d|0,cK()|0,10,b|0);l=c;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=YJ(d)|0;d=ZJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,22,b|0);l=c;return}function JF(a,b){a=a|0;b=b|0;XJ(a,b);return}function KF(a,b){a=a|0;b=b|0;WJ(a,b);return}function LF(a,b){a=a|0;b=b|0;VJ(a,b);return}function MF(a,b){a=a|0;b=b|0;return TJ(a,b)|0}function NF(a){a=a|0;return a|0}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=PJ(d)|0;d=QJ(d)|0;Yb(a|0,e|0,d|0,nI()|0,32,b|0);l=c;return}function PF(a){a=a|0;HJ(a);return}function QF(a){a=a|0;zJ(a);return}function RF(a,b){a=a|0;b=b|0;yJ(a,b);return}function SF(a){a=a|0;return a|0}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=tJ(d)|0;d=uJ(d)|0;Yb(a|0,e|0,d|0,VG()|0,23,b|0);l=c;return}function UF(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;sJ(a,b,d,e,f);return}function VF(a){a=a|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=nJ(d)|0;d=oJ(d)|0;Yb(a|0,e|0,d|0,pJ()|0,1,b|0);l=c;return}function XF(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;hJ(a,b,c,d);return}function YF(a){a=a|0;return a|0}function ZF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=cJ(d)|0;d=dJ(d)|0;Yb(a|0,e|0,d|0,eJ()|0,1,b|0);l=c;return}function _F(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=ZI(d)|0;d=_I(d)|0;Yb(a|0,e|0,d|0,XH()|0,15,b|0);l=c;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;XI(a,b,c);return}function aG(a){a=a|0;return a|0}function bG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=TI(d)|0;d=UI(d)|0;Yb(a|0,e|0,d|0,nI()|0,33,b|0);l=c;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=NI(d)|0;d=OI(d)|0;Yb(a|0,e|0,d|0,VG()|0,24,b|0);l=c;return}function dG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;MI(a,b,c,d,e,f);return}function eG(a){a=a|0;return a|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HI(d)|0;d=II(d)|0;Yb(a|0,e|0,d|0,JI()|0,1,b|0);l=c;return}function gG(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;uI(a,b,c,d,e,f);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=qI(d)|0;d=rI(d)|0;Yb(a|0,e|0,d|0,VG()|0,25,b|0);l=c;return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=lI(d)|0;d=mI(d)|0;Yb(a|0,e|0,d|0,nI()|0,34,b|0);l=c;return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=fI(d)|0;d=gI(d)|0;Yb(a|0,e|0,d|0,hI()|0,2,b|0);l=c;return}function kG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=aI(d)|0;d=bI(d)|0;Yb(a|0,e|0,d|0,cI()|0,1,b|0);l=c;return}function lG(a,b,c){a=a|0;b=b|0;c=c|0;return $H(a,b,c)|0}function mG(a){a=a|0;return a|0}function nG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=VH(d)|0;d=WH(d)|0;Yb(a|0,e|0,d|0,XH()|0,16,b|0);l=c;return}function oG(a){a=a|0;return MH(a)|0}function pG(a){a=a|0;return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=HH(d)|0;d=IH(d)|0;Yb(a|0,e|0,d|0,VG()|0,26,b|0);l=c;return}function rG(a,b){a=a|0;b=b|0;GH(a,b);return}function sG(a,b){a=a|0;b=b|0;FH(a,b);return}function tG(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;sH(a,b,c,d);return}function uG(a){a=a|0;return a|0}function vG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;e=iH(d)|0;d=jH(d)|0;Yb(a|0,e|0,d|0,kH()|0,1,b|0);l=c;return}function wG(a,b){a=a|0;b=b|0;$G(a,b);return}function xG(a){a=a|0;return a|0}function yG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;c=l;l=l+16|0;d=c;e=TG(d)|0;d=UG(d)|0;Yb(a|0,e|0,d|0,VG()|0,27,b|0);l=c;return}function zG(a){a=a|0;MG(a);return}function AG(a){a=a|0;LG(a);return}function BG(a){a=a|0;CG(a);return}function CG(b){b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DG(e,b);th((a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e);l=d;return}function DG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0;d=l;l=l+16|0;g=d+4|0;e=d;b=c[b>>2]|0;f=+cc(b|0,c[(EG(d+8|0)|0)>>2]|0,g|0);FG(e,c[g>>2]|0);GG(a,f);HG(e);l=d;return}function EG(a){a=a|0;return KG()|0}function FG(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function GG(a,b){a=a|0;b=+b;JG(a,IG(b)|0);return}function HG(a){a=a|0;mc(c[a>>2]|0);return}function IG(a){a=+a;return ~~a>>>0|0}function JG(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;e=g;f=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,d+4|0,f)|0;a[e>>0]=0;IA(b+f|0,e);l=g;return}function KG(){return 1680}function LG(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=sh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function MG(b){b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c+1|0;a[d>>0]=a[c>>0]|0;Uf(NG(b,d)|0);l=c;return}function NG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(OG(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=PG(f)|0;HG(e);l=d;return b|0}function OG(a){a=a|0;return SG()|0}function PG(a){a=+a;return RG(QG(a)|0)|0}function QG(a){a=+a;return ~~a>>>0|0}function RG(a){a=a|0;return a|0}function SG(){return 1684}function TG(a){a=a|0;return 2}function UG(a){a=a|0;return _G()|0}function VG(){return 36001}function WG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=XG(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function XG(a){a=a|0;return a|0}function YG(a){a=a|0;hc(c[a>>2]|0);return c[a>>2]|0}function ZG(a){a=a|0;ec(c[a>>2]|0);return}function _G(){return 1688}function $G(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=vf(b)|0;aH(a,e);l=d;return}function aH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;bH(e,b);b=cH()|0;c[a>>2]=oc(b|0,dH(e)|0)|0;l=d;return}function bH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;gH(e,fH(c[b>>2]|0)|0);hH(e);l=d;return}function cH(){return eH()|0}function dH(a){a=a|0;return a|0}function eH(){return 880}function fH(a){a=a|0;return a|0}function gH(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function hH(a){a=a|0;return}function iH(a){a=a|0;return 4}function jH(a){a=a|0;return rH()|0}function kH(){return 36024}function lH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+4|0;f=e;b=mH(b)|0;c=+nH(c);oH(f,d);pe[a&1](g,b,c,f);d=YG(g)|0;ZG(g);ZG(f);l=e;return d|0}function mH(a){a=a|0;return a|0}function nH(a){a=+a;return +a}function oH(a,b){a=a|0;b=b|0;pH(a,b);return}function pH(a,b){a=a|0;b=b|0;qH(a,b);return}function qH(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function rH(){return 1696}function sH(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;g=e+8|0;f=e;Vj(g,b,c);tH(f,d);uH(a,g,f);ZG(f);l=e;return}function tH(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;hc(b|0);return}function uH(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);wH(a,c);return}function vH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;a=c[a>>2]|0;xH(f,b);b=c[f>>2]|0;yH(g,d);nc(a|0,b|0,c[g>>2]|0);ZG(g);ZG(f);l=e;return}function wH(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];c[b>>2]=0;return}function xH(a,b){a=a|0;b=b|0;c[a>>2]=jc(b|0)|0;return}function yH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;zH(e,b);b=AH()|0;c[a>>2]=oc(b|0,BH(e)|0)|0;l=d;return}function zH(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function AH(){return CH()|0}function BH(a){a=a|0;return a|0}function CH(){return 984}function DH(a){a=a|0;return +(+g[a>>2])}function EH(a,b){a=a|0;b=+b;g[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Tj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Sj(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function HH(a){a=a|0;return 2}function IH(a){a=a|0;return LH()|0}function JH(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);b=KH(Bd[a&63](d)|0)|0;ZG(d);l=c;return b|0}function KH(a){a=a|0;return a|0}function LH(){return 1712}function MH(a){a=a|0;var b=0,c=0;c=l;l=l+16|0;b=c;if(NH(a)|0)a=$h(0)|0;else{OH(b,a);a=$h(b)|0}l=c;return a|0}function NH(a){a=a|0;return (c[a>>2]|0)==2|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0;c=l;l=l+16|0;f=c;PH(f,b,36030);e=+QH(f);ZG(f);PH(f,b,36032);d=+QH(f);ZG(f);Ze(a,e,d);l=c;return}function PH(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xH(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function QH(a){a=a|0;var b=0.0,d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;a=c[a>>2]|0;b=+cc(a|0,c[(RH(d+8|0)|0)>>2]|0,f|0);FG(e,c[f>>2]|0);b=+SH(b);HG(e);l=d;return +b}function RH(a){a=a|0;return UH()|0}function SH(a){a=+a;return +(+nH(+TH(a)))}function TH(a){a=+a;return +a}function UH(){return 1720}function VH(a){a=a|0;return 4}function WH(a){a=a|0;return _H()|0}function XH(){return 36034}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);ZG(f);l=e;return d|0}function ZH(a){a=a|0;return a|0}function _H(){return 1724}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);c=gh(f,e,c)|0;l=d;return c|0}function aI(a){a=a|0;return 3}function bI(a){a=a|0;return eI()|0}function cI(){return 36040}function dI(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);return KH(Cd[a&1](b,c)|0)|0}function eI(){return 1740}function fI(a){a=a|0;return 4}function gI(a){a=a|0;return kI()|0}function hI(){return 36045}function iI(a,b,d,e){a=a|0;b=b|0;d=+d;e=+e;var f=0,g=0;f=l;l=l+16|0;g=f;b=mH(b)|0;d=+nH(d);e=+nH(e);c[g>>2]=Dd[a&3](b,d,e)|0;b=jI(g)|0;l=f;return b|0}function jI(a){a=a|0;return c[a>>2]|0}function kI(){return 1752}function lI(a){a=a|0;return 3}function mI(a){a=a|0;return pI()|0}function nI(){return 36051}function oI(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=ZH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function pI(){return 1768}function qI(a){a=a|0;return 2}function rI(a){a=a|0;return tI()|0}function sI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;c[e>>2]=Bd[a&63](b)|0;b=jI(e)|0;l=d;return b|0}function tI(){return 1780}function uI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Rf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function vI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;DI(e,b);b=EI()|0;c[a>>2]=oc(b|0,FI(e)|0)|0;l=d;return}function wI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xI(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function xI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;yI(e,b);b=zI()|0;c[a>>2]=oc(b|0,AI(e)|0)|0;l=d;return}function yI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function zI(){return BI()|0}function AI(a){a=a|0;return a|0}function BI(){return 952}function CI(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function DI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;EH(e,+DH(b));hH(e);l=d;return}function EI(){return GI()|0}function FI(a){a=a|0;return a|0}function GI(){return 984}function HI(a){a=a|0;return 7}function II(a){a=a|0;return LI()|0}function JI(){return 36056}function KI(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;b=+nH(b);c=+nH(c);d=+nH(d);oH(i,e);oH(j,f);oH(k,g);ge[a&3](b,c,d,i,j,k);ZG(k);ZG(j);ZG(i);l=h;return}function LI(){return 1788}function MI(a,b,d,e,f,g){a=+a;b=+b;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;h=l;l=l+32|0;n=h+16|0;m=h+12|0;k=h+8|0;j=h+4|0;i=h;Pf(a,b,d,n,m,k);c[j>>2]=0;vI(i,n);wI(e,j,i);ZG(i);c[j>>2]=0;vI(i,m);wI(f,j,i);ZG(i);c[j>>2]=0;vI(i,k);wI(g,j,i);ZG(i);l=h;return}function NI(a){a=a|0;return 2}function OI(a){a=a|0;return SI()|0}function PI(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=QI(b)|0;c[e>>2]=Bd[a&63](b)|0;b=RI(e)|0;l=d;return b|0}function QI(a){a=a|0;return a|0}function RI(a){a=a|0;return c[a>>2]|0}function SI(){return 1816}function TI(a){a=a|0;return 3}function UI(a){a=a|0;return WI()|0}function VI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;b=XG(b)|0;oH(e,c);te[a&63](f,b,e);c=YG(f)|0;ZG(f);ZG(e);l=d;return c|0}function WI(){return 1824}function XI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;f=d+8|0;e=d;Hf(f,b);tH(e,c);YI(a,f,e);ZG(e);l=d;return}function YI(a,b,c){a=a|0;b=b|0;c=c|0;vH(c,36030,b);vH(c,36032,b+4|0);vH(c,36073,b+8|0);vH(c,36075,b+12|0);wH(a,c);return}function ZI(a){a=a|0;return 4}function _I(a){a=a|0;return bJ()|0}function $I(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=XG(b)|0;c=aJ(c)|0;d=mH(d)|0;return KH(Nd[a&63](b,c,d)|0)|0}function aJ(a){a=a|0;return a|0}function bJ(){return 1836}function cJ(a){a=a|0;return 5}function dJ(a){a=a|0;return gJ()|0}function eJ(){return 36085}function fJ(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;b=mH(b)|0;c=+nH(c);oH(g,d);oH(h,e);me[a&3](b,c,g,h);ZG(h);ZG(g);l=f;return}function gJ(){return 1852}function hJ(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+12|0;i=f+8|0;h=f+4|0;g=f;c[j>>2]=-1;c[i>>2]=-1;sg(a,b,j,i);c[h>>2]=0;iJ(g,j);wI(d,h,g);ZG(g);c[h>>2]=0;iJ(g,i);wI(e,h,g);ZG(g);l=f;return}function iJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;jJ(e,b);b=kJ()|0;c[a>>2]=oc(b|0,lJ(e)|0)|0;l=d;return}function jJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;CI(e,jI(b)|0);hH(e);l=d;return}function kJ(){return mJ()|0}function lJ(a){a=a|0;return a|0}function mJ(){return 952}function nJ(a){a=a|0;return 6}function oJ(a){a=a|0;return rJ()|0}function pJ(){return 36092}function qJ(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+32|0;k=g+20|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);d=ZH(d)|0;e=+nH(e);oH(j,f);Ae[a&3](k,h,i,d,e,j);f=YG(k)|0;ZG(k);ZG(j);ZG(i);kba(h);l=g;return f|0}function rJ(){return 1872}function sJ(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=+f;g=g|0;var h=0,i=0,j=0;j=l;l=l+16|0;h=j+8|0;i=j;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;tj(h,d,0,e,f);tH(i,g);uH(b,h,i);ZG(i);l=j;return}function tJ(a){a=a|0;return 2}function uJ(a){a=a|0;return xJ()|0}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=wJ(d)|0;kba(d);l=c;return b|0}function wJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+11>>0]|0;h=d<<24>>24<0;if(h){f=c[b+4>>2]|0;g=W8(f+4|0)|0;d=d&255;e=f}else{e=d&255;g=W8(e+4|0)|0;d=e;f=c[b+4>>2]|0}c[g>>2]=e;qca(g+4|0,(h?c[b>>2]|0:b)|0,(h?f:d)|0)|0;return g|0}function xJ(){return 1896}function yJ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=Em(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function zJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ih()|0;AJ(a,d);l=b;return}function AJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;BJ(e,b);b=CJ()|0;c[a>>2]=oc(b|0,DJ(e)|0)|0;l=d;return}function BJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;GJ(e,FJ(c[b>>2]|0)|0);hH(e);l=d;return}function CJ(){return EJ()|0}function DJ(a){a=a|0;return a|0}function EJ(){return 64}function FJ(a){a=a|0;return a|0}function GJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function HJ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Hh()|0;IJ(a,d);l=b;return}function IJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JJ(e,b);b=KJ()|0;c[a>>2]=oc(b|0,LJ(e)|0)|0;l=d;return}function JJ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OJ(e,NJ(c[b>>2]|0)|0);hH(e);l=d;return}function KJ(){return MJ()|0}function LJ(a){a=a|0;return a|0}function MJ(){return 88}function NJ(a){a=a|0;return a|0}function OJ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PJ(a){a=a|0;return 3}function QJ(a){a=a|0;return SJ()|0}function RJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;oH(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);ZG(e);l=d;return c|0}function SJ(){return 1904}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=l;l=l+16|0;c=e+8|0;d=e;if(UJ(b)|0){OH(c,a);a=lr(c)|0}else{OH(c,a);OH(d,b);a=mr(c,d)|0}l=e;return a|0}function UJ(a){a=a|0;return (c[a>>2]|0)==1|0}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ik(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;hk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;gk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function YJ(a){a=a|0;return 2}function ZJ(a){a=a|0;return $J()|0}function _J(a,b){a=a|0;b=b|0;b=mH(b)|0;return KH(Bd[a&63](b)|0)|0}function $J(){return 1916}function aK(a){a=a|0;return 4}function bK(a){a=a|0;return eK()|0}function cK(){return 36174}function dK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);oH(g,c);d=ZH(d)|0;te[a&63](f,g,d);ZG(g);ZG(f);l=e;return}function eK(){return 1924}function fK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,b);Yi(f,e,c);l=d;return}function gK(a){a=a|0;return 3}function hK(a){a=a|0;return jK()|0}function iK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+12|0;e=d;JG(e,b);c=mH(c)|0;te[a&63](f,e,c);c=YG(f)|0;ZG(f);kba(e);l=d;return c|0}function jK(){return 1940}function kK(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36190;fba(36180,d)|0;lK(a);l=b;return}function lK(a){a=a|0;qH(a,2);return}function mK(a){a=a|0;return 5}function nK(a){a=a|0;return qK()|0}function oK(){return 36338}function pK(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=XG(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function qK(){return 1952}function rK(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36345;fba(36180,b)|0;l=a;return}function sK(a){a=a|0;return 3}function tK(a){a=a|0;return vK()|0}function uK(a,b,c){a=a|0;b=b|0;c=c|0;b=mH(b)|0;c=mH(c)|0;return KH(Fd[a&63](b,c)|0)|0}function vK(){return 1972}function wK(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;oj(36509,d);l=e;return}function xK(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(NH(d)|0)$n(b,0);else{DG(e,d);$n(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e);kba(e)}l=f;return}function yK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Dk(b)|0}function zK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Lk(b,d)|0}function AK(a){a=a|0;return 4}function BK(a){a=a|0;return DK()|0}function CK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=mH(c)|0;d=ZH(d)|0;d=KH(Nd[a&63](f,c,d)|0)|0;kba(f);l=e;return d|0}function DK(){return 1984}function EK(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jk(b,d,e)|0}function FK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ik(b,d)|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=Ek(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=c[b>>2]|0;xI(f,d);qH(a,gc(b|0,c[f>>2]|0)|0);ZG(f);l=e;return}function IK(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(PK(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=QK(e)|0;HG(d);l=b;return a|0}function JK(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;KK(e,b);b=LK()|0;c[a>>2]=oc(b|0,MK(e)|0)|0;l=d;return}function KK(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=b;OK(f,KH((a[d>>0]|0)!=0)|0);hH(f);l=e;return}function LK(){return NK()|0}function MK(a){a=a|0;return a|0}function NK(){return 904}function OK(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b&1;c[a>>2]=(c[a>>2]|0)+8;return}function PK(a){a=a|0;return SK()|0}function QK(a){a=+a;return ZH(RK(a)|0)|0}function RK(a){a=+a;return a!=0.0|0}function SK(){return 2e3}function TK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Ck(b,0)|0}function UK(a){a=a|0;return 3}function VK(a){a=a|0;return XK()|0}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=mH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function XK(){return 2004}function YK(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Hk(b,d)|0}function ZK(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;uk(b);return}function _K(a){a=a|0;return 5}function $K(a){a=a|0;return bL()|0}function aL(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,i=0;f=l;l=l+32|0;g=f+16|0;h=f+4|0;i=f;JG(g,b);JG(h,c);oH(i,d);e=ZH(e)|0;e=KH(Wd[a&31](g,h,i,e)|0)|0;ZG(i);kba(h);kba(g);l=f;return e|0}function bL(){return 2016}function cL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j+8|0;h=j+4|0;i=j;c[i>>2]=0;HK(h,e,i);k=IK(h)|0;ZG(h);a[g>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;k=Bq(b,d,g,f)|0;c[h>>2]=0;JK(i,g);wI(e,h,i);ZG(i);l=j;return k|0}function dL(a){a=a|0;return 3}function eL(a){a=a|0;return gL()|0}function fL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;JG(e,b);c=ZH(c)|0;c=KH(Fd[a&63](e,c)|0)|0;kba(e);l=d;return c|0}function gL(){return 2036}function hL(b,d){b=b|0;d=d|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Jq(b,d)|0}function iL(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;ok(36509,d);l=e;return}function jL(a){a=a|0;return 3}function kL(a){a=a|0;return nL()|0}function lL(){return 36512}function mL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);ne[a&127](e,f);ZG(f);kba(e);l=d;return}function nL(){return 2048}function oL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;g=i+8|0;e=i+4|0;pL(g,d);xH(e,36517);f=qL(g,e)|0;ZG(e);ZG(g);do if(!f){pL(g,d);xH(e,36525);f=qL(g,e)|0;ZG(e);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(f){Lr(b,+QH(d),0);break}else{DG(g,d);c[h>>2]=(a[g+11>>0]|0)<0?c[g>>2]|0:g;On(b,36509,h);kba(g);break}}else{if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Kr(b,IK(d)|0)}while(0);l=i;return}function pL(a,b){a=a|0;b=b|0;qH(a,pc(c[b>>2]|0)|0);return}function qL(a,b){a=a|0;b=b|0;return fc(c[a>>2]|0,c[b>>2]|0)|0}function rL(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=uq(b,e)|0;l=f;return e|0}function sL(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44336]|0)==0?_ba(44336)|0:0)tH(45476,e);if((a[44344]|0)==0?_ba(44344)|0:0)c[11370]=f;if((a[44352]|0)==0?_ba(44352)|0:0){c[11371]=0;c[11372]=0;c[11373]=0}c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=xq(b,h,vL(35)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function tL(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(xL(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=yL(e)|0;HG(d);l=b;return a|0}function uL(a,b,c){a=a|0;b=b|0;c=c|0;return wL(b,c)|0}function vL(a){a=a|0;return a|0}function wL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+20|0;f=i+16|0;g=i+4|0;h=i;c[f>>2]=b;if((b|0)<0|(c[11370]|0)<(b|0))b=0;else{HK(h,45476,f);DG(g,h);if((a[45495]|0)<0){f=c[11371]|0;a[e>>0]=0;IA(f,e);c[11372]=0}else{a[e>>0]=0;IA(45484,e);a[45495]=0}lba(45484,0);c[11371]=c[g>>2];c[11372]=c[g+4>>2];c[11373]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;kba(g);ZG(h);c[d>>2]=(a[45495]|0)<0?c[11371]|0:45484;b=1}l=i;return b|0}function xL(a){a=a|0;return AL()|0}function yL(a){a=+a;return mH(zL(a)|0)|0}function zL(a){a=+a;return ~~a|0}function AL(){return 2060}function BL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;h=j;pL(i,d);xH(g,36517);k=qL(i,g)|0;ZG(g);ZG(i);if(k){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;k=IK(d)|0;OH(i,f);b=rq(b,k,e,i)|0}else{c[h>>2]=0;HK(g,d,h);k=IK(g)|0;ZG(g);a[i>>0]=k&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(g,f);b=tq(b,i,e,g)|0;c[g>>2]=0;JK(h,i);wI(d,g,h);ZG(h)}l=j;return b|0}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=mo(b,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=no(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function DL(b){b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e+4|0;g=e;pL(d,b);xH(g,36532);f=qL(d,g)|0;ZG(g);ZG(d);if(f){DG(d,b);Hr((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}else Ir(tL(b)|0);l=e;return}function EL(a){a=a|0;return 4}function FL(a){a=a|0;return HL()|0}function GL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+12|0;g=e;oH(f,b);c=mH(c)|0;JG(g,d);d=KH(Nd[a&63](f,c,g)|0)|0;kba(g);ZG(f);l=e;return d|0}function HL(){return 2064}function IL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+32|0;h=i+8|0;g=i;f=i+16|0;k=i+12|0;pL(f,b);xH(k,36532);j=qL(f,k)|0;ZG(k);ZG(f);if(j){DG(f,b);b=(a[f+11>>0]|0)<0?c[f>>2]|0:f;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[g>>2]=e;e=so(b,d,36509,g)|0;kba(f)}else{b=tL(b)|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;c[h>>2]=e;e=to(b,d,36509,h)|0}l=i;return e|0}function JL(a){a=a|0;return 3}function KL(a){a=a|0;return ML()|0}function LL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);c=KH(Fd[a&63](e,f)|0)|0;kba(f);ZG(e);l=d;return c|0}function ML(){return 2080}function NL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+8|0;f=h;e=h+16|0;j=h+12|0;pL(e,b);xH(j,36532);i=qL(e,j)|0;ZG(j);ZG(e);if(i){DG(e,b);b=(a[e+11>>0]|0)<0?c[e>>2]|0:e;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;d=uo(b,36509,f)|0;kba(e)}else{b=tL(b)|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[g>>2]=d;d=vo(b,36509,g)|0}l=h;return d|0}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;g=j+24|0;h=j+8|0;i=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;PL(h,d);OH(i,f);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];i=Oq(b,h,e,g)|0;l=j;return i|0}function PL(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0;c=l;l=l+16|0;h=c;PH(h,b,36030);g=+QH(h);ZG(h);PH(h,b,36032);f=+QH(h);ZG(h);PH(h,b,36073);e=+QH(h);ZG(h);PH(h,b,36075);d=+QH(h);ZG(h);If(a,g,f,e,d);l=c;return}function QL(a){a=a|0;return 5}function RL(a){a=a|0;return TL()|0}function SL(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,i=0;f=l;l=l+32|0;g=f+8|0;h=f+4|0;i=f;JG(g,b);oH(h,c);d=mH(d)|0;oH(i,e);e=KH(Wd[a&31](g,h,d,i)|0)|0;ZG(i);ZG(h);kba(g);l=f;return e|0}function TL(){return 2092}function UL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Zq(b,i,e,0)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function VL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=br(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function WL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+8|0;j=n+4|0;k=n;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);ZG(j);c[k>>2]=1;HK(j,d,k);m=i+4|0;g[m>>2]=+QH(j);ZG(j);c[k>>2]=2;HK(j,d,k);f=i+8|0;g[f>>2]=+QH(j);ZG(j);c[k>>2]=3;HK(j,d,k);h=i+12|0;g[h>>2]=+QH(j);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Wq(b,i,e)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,m);wI(d,j,k);ZG(k);c[j>>2]=2;vI(k,f);wI(d,j,k);ZG(k);c[j>>2]=3;vI(k,h);wI(d,j,k);ZG(k);l=n;return e|0}function XL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;h=m+8|0;i=m+4|0;j=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[j>>2]=0;HK(i,d,j);g[h>>2]=+QH(i);ZG(i);c[j>>2]=1;HK(i,d,j);k=h+4|0;g[k>>2]=+QH(i);ZG(i);c[j>>2]=2;HK(i,d,j);f=h+8|0;g[f>>2]=+QH(i);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;e=Vq(b,h,e)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;vI(j,k);wI(d,i,j);ZG(j);c[i>>2]=2;vI(j,f);wI(d,i,j);ZG(j);l=m;return e|0}function YL(a){a=a|0;return 7}function ZL(a){a=a|0;return aM()|0}function _L(){return 36539}function $L(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h;JG(i,b);oH(j,c);oH(k,d);e=mH(e)|0;f=mH(f)|0;JG(m,g);g=KH(ae[a&7](i,j,k,e,f,m)|0)|0;kba(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function aM(){return 2112}function bM(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+32|0;i=m+16|0;j=m+8|0;k=m;c[k>>2]=0;HK(j,e,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(j,d);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=Vo(b,j,i,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(e,j,k);ZG(k);l=m;return n|0}function cM(a){a=a|0;return 8}function dM(a){a=a|0;return gM()|0}function eM(){return 36548}function fM(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i;JG(j,b);oH(k,c);oH(m,d);e=+nH(e);f=+nH(f);JG(n,g);h=+nH(h);g=KH(Td[a&3](j,k,m,e,f,n,h)|0)|0;kba(n);ZG(m);ZG(k);kba(j);l=i;return g|0}function gM(){return 2140}function hM(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;k=o+16|0;m=o+8|0;n=o;c[n>>2]=0;HK(m,e,n);p=+QH(m);ZG(m);g[k>>2]=p;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(m,d);if((a[i+11>>0]|0)<0)i=c[i>>2]|0;d=To(b,m,k,f,h,i,j)|0;c[m>>2]=0;vI(n,k);wI(e,m,n);ZG(n);l=o;return d|0}function iM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;h=k+4|0;c[i>>2]=1;HK(p,d,i);c[h>>2]=tL(p)|0;i=k+8|0;c[j>>2]=2;HK(q,d,j);c[i>>2]=tL(q)|0;j=k+12|0;c[s>>2]=3;HK(r,d,s);c[j>>2]=tL(r)|0;ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;s=dp(b,k,e,f,g)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;iJ(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;h=j+4|0;c[i>>2]=1;HK(o,d,i);c[h>>2]=tL(o)|0;i=j+8|0;c[q>>2]=2;HK(p,d,q);c[i>>2]=tL(p)|0;ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;q=cp(b,j,e,f,g)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;iJ(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function kM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;h=i+4|0;c[o>>2]=1;HK(n,d,o);c[h>>2]=tL(n)|0;ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;o=bp(b,i,e,f,g)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function lM(a){a=a|0;return 6}function mM(a){a=a|0;return pM()|0}function nM(){return 36558}function oM(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;g=l;l=l+32|0;h=g+16|0;i=g+12|0;j=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;JG(j,f);f=KH($d[a&15](h,i,d,e,j)|0)|0;kba(j);ZG(i);kba(h);l=g;return f|0}function pM(){return 2172}function qM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[g+11>>0]|0)<0)g=c[g>>2]|0;m=ho(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function rM(a){a=a|0;return 5}function sM(a){a=a|0;return vM()|0}function tM(){return 36566}function uM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=+nH(d);e=+nH(e);c=KH(Hd[a&3](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return c|0}function vM(){return 2196}function wM(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=+QH(i);ZG(i);g[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Uo(b,h,e,f)|0;c[i>>2]=0;vI(j,h);wI(d,i,j);ZG(j);l=k;return b|0}function xM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=l;l=l+48|0;n=q+32|0;o=q+28|0;p=q+24|0;r=q+20|0;k=q+16|0;s=q+12|0;m=q+8|0;t=q+4|0;u=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);j=n+4|0;c[k>>2]=1;HK(r,d,k);g[j>>2]=+QH(r);k=n+8|0;c[m>>2]=2;HK(s,d,m);g[k>>2]=+QH(s);m=n+12|0;c[u>>2]=3;HK(t,d,u);g[m>>2]=+QH(t);ZG(t);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;u=$o(b,n,e,f,h,i)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,j);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=3;vI(p,m);wI(d,o,p);ZG(p);l=q;return u|0}function yM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+48|0;m=p+24|0;n=p+20|0;o=p+16|0;q=p+12|0;k=p+8|0;r=p+4|0;s=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);j=m+4|0;c[k>>2]=1;HK(q,d,k);g[j>>2]=+QH(q);k=m+8|0;c[s>>2]=2;HK(r,d,s);g[k>>2]=+QH(r);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;s=_o(b,m,e,f,h,i)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,j);wI(d,n,o);ZG(o);c[n>>2]=2;vI(o,k);wI(d,n,o);ZG(o);l=p;return s|0}function zM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;k=o+16|0;m=o+12|0;n=o+8|0;p=o+4|0;q=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);j=k+4|0;c[q>>2]=1;HK(p,d,q);g[j>>2]=+QH(p);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;q=Zo(b,k,e,f,h,i)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,j);wI(d,m,n);ZG(n);l=o;return q|0}function AM(a){a=a|0;return 7}function BM(a){a=a|0;return EM()|0}function CM(){return 36573}function DM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);JG(k,f);g=+nH(g);f=KH(Jd[a&7](i,j,d,e,k,g)|0)|0;kba(k);ZG(j);kba(i);l=h;return f|0}function EM(){return 2216}function FM(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;h=So(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return h|0}function GM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+48|0;i=m+32|0;j=m+28|0;k=m+24|0;n=m+20|0;g=m+16|0;o=m+12|0;h=m+8|0;p=m+4|0;q=m;c[k>>2]=0;HK(j,d,k);c[i>>2]=tL(j)|0;f=i+4|0;c[g>>2]=1;HK(n,d,g);c[f>>2]=tL(n)|0;g=i+8|0;c[h>>2]=2;HK(o,d,h);c[g>>2]=tL(o)|0;h=i+12|0;c[q>>2]=3;HK(p,d,q);c[h>>2]=tL(p)|0;ZG(p);ZG(o);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=jq(b,i,e)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;iJ(k,f);wI(d,j,k);ZG(k);c[j>>2]=2;iJ(k,g);wI(d,j,k);ZG(k);c[j>>2]=3;iJ(k,h);wI(d,j,k);ZG(k);l=m;return q|0}function HM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+48|0;h=k+24|0;i=k+20|0;j=k+16|0;m=k+12|0;g=k+8|0;n=k+4|0;o=k;c[j>>2]=0;HK(i,d,j);c[h>>2]=tL(i)|0;f=h+4|0;c[g>>2]=1;HK(m,d,g);c[f>>2]=tL(m)|0;g=h+8|0;c[o>>2]=2;HK(n,d,o);c[g>>2]=tL(n)|0;ZG(n);ZG(m);ZG(i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=iq(b,h,e)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);c[i>>2]=1;iJ(j,f);wI(d,i,j);ZG(j);c[i>>2]=2;iJ(j,g);wI(d,i,j);ZG(j);l=k;return o|0}function IM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;j=l;l=l+32|0;f=j+16|0;g=j+12|0;h=j+8|0;k=j+4|0;m=j;c[h>>2]=0;HK(g,d,h);c[f>>2]=tL(g)|0;i=f+4|0;c[m>>2]=1;HK(k,d,m);c[i>>2]=tL(k)|0;ZG(k);ZG(g);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=hq(b,f,e)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h);c[g>>2]=1;iJ(h,i);wI(d,g,h);ZG(h);l=j;return m|0}function JM(a){a=a|0;return 6}function KM(a){a=a|0;return MM()|0}function LM(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;g=l;l=l+16|0;h=g+4|0;i=g;JG(h,b);oH(i,c);d=mH(d)|0;e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,d,e,f)|0)|0;ZG(i);kba(h);l=g;return f|0}function MM(){return 2244}function NM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;c[j>>2]=0;HK(i,d,j);m=tL(i)|0;ZG(i);c[h>>2]=m;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;m=bq(b,h,e,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return m|0}function OM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;o=l;l=l+48|0;k=o+32|0;m=o+28|0;n=o+24|0;p=o+20|0;i=o+16|0;q=o+12|0;j=o+8|0;r=o+4|0;s=o;c[n>>2]=0;HK(m,d,n);g[k>>2]=+QH(m);h=k+4|0;c[i>>2]=1;HK(p,d,i);g[h>>2]=+QH(p);i=k+8|0;c[j>>2]=2;HK(q,d,j);g[i>>2]=+QH(q);j=k+12|0;c[s>>2]=3;HK(r,d,s);g[j>>2]=+QH(r);ZG(r);ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;s=fq(b,k,e,f)|0;c[m>>2]=0;vI(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;vI(n,h);wI(d,m,n);ZG(n);c[m>>2]=2;vI(n,i);wI(d,m,n);ZG(n);c[m>>2]=3;vI(n,j);wI(d,m,n);ZG(n);l=o;return s|0}function PM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;n=l;l=l+48|0;j=n+24|0;k=n+20|0;m=n+16|0;o=n+12|0;i=n+8|0;p=n+4|0;q=n;c[m>>2]=0;HK(k,d,m);g[j>>2]=+QH(k);h=j+4|0;c[i>>2]=1;HK(o,d,i);g[h>>2]=+QH(o);i=j+8|0;c[q>>2]=2;HK(p,d,q);g[i>>2]=+QH(p);ZG(p);ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;q=eq(b,j,e,f)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;vI(m,h);wI(d,k,m);ZG(m);c[k>>2]=2;vI(m,i);wI(d,k,m);ZG(m);l=n;return q|0}function QM(a){a=a|0;return 5}function RM(a){a=a|0;return TM()|0}function SM(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;f=l;l=l+16|0;g=f+4|0;h=f;JG(g,b);oH(h,c);d=mH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);kba(g);l=f;return e|0}function TM(){return 2268} +function UM(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+32|0;i=m+16|0;j=m+12|0;k=m+8|0;n=m+4|0;o=m;c[k>>2]=0;HK(j,d,k);g[i>>2]=+QH(j);h=i+4|0;c[o>>2]=1;HK(n,d,o);g[h>>2]=+QH(n);ZG(n);ZG(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;o=dq(b,i,e,f)|0;c[j>>2]=0;vI(k,i);wI(d,j,k);ZG(k);c[j>>2]=1;vI(k,h);wI(d,j,k);ZG(k);l=m;return o|0}function VM(a){a=a|0;return 7}function WM(a){a=a|0;return ZM()|0}function XM(){return 36582}function YM(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;JG(i,b);oH(j,c);d=+nH(d);e=+nH(e);f=mH(f)|0;g=mH(g)|0;g=KH(Kd[a&1](i,j,d,e,f,g)|0)|0;ZG(j);kba(i);l=h;return g|0}function ZM(){return 2288}function _M(b,d,e,f,h,i){b=b|0;d=d|0;e=+e;f=+f;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+16|0;j=n+8|0;k=n+4|0;m=n;c[m>>2]=0;HK(k,d,m);o=+QH(k);ZG(k);g[j>>2]=o;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=aq(b,j,e,f,h,i)|0;c[k>>2]=0;vI(m,j);wI(d,k,m);ZG(m);l=n;return i|0}function $M(a){a=a|0;return 8}function aN(a){a=a|0;return dN()|0}function bN(){return 36591}function cN(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i+8|0;n=i+4|0;o=i;JG(j,b);oH(k,c);d=XG(d)|0;oH(m,e);f=mH(f)|0;oH(n,g);oH(o,h);h=KH(be[a&7](j,k,d,m,f,n,o)|0)|0;ZG(o);ZG(n);ZG(m);ZG(k);kba(j);l=i;return h|0}function dN(){return 2316}function eN(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;j=n+16|0;k=n+8|0;m=n;c[m>>2]=0;HK(k,d,m);DG(j,k);ZG(k);lba(j,e);if(NH(h)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,0,0)|0;i=j}else{if((a[44360]|0)==0?_ba(44360)|0:0)tH(45496,h);if((a[44368]|0)==0?_ba(44368)|0:0)tH(45500,i);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;h=j+11|0;o=a[h>>0]|0;i=c[j>>2]|0;OH(k,f);b=Yp(b,o<<24>>24<0?i:j,e,k,g,gN(23)|0,0)|0;i=j}c[k>>2]=0;xH(m,(a[h>>0]|0)<0?c[i>>2]|0:j);wI(d,k,m);ZG(m);kba(j);l=n;return b|0}function fN(a){a=a|0;return hN(a)|0}function gN(a){a=a|0;return a|0}function hN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45500);kN(e,45496,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function iN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;sN(e,b);b=tN()|0;c[a>>2]=oc(b|0,uN(e)|0)|0;l=d;return}function jN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;xH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function kN(a,b,c){a=a|0;b=b|0;c=c|0;lN(a,b,17,c);return}function lN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;mN(i,e);h=c[b>>2]|0;g=nN(j)|0;b=oN(j)|0;e=pN(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function mN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function nN(a){a=a|0;return 1}function oN(a){a=a|0;return qN()|0}function pN(a){a=a|0;return a|0}function qN(){return 2348}function rN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sN(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;xN(e,wN(c[b>>2]|0)|0);hH(e);l=d;return}function tN(){return vN()|0}function uN(a){a=a|0;return a|0}function vN(){return 112}function wN(a){a=a|0;return a|0}function xN(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function yN(a){a=a|0;return 7}function zN(a){a=a|0;return BN()|0}function AN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;JG(i,b);oH(j,c);d=XG(d)|0;e=mH(e)|0;oH(k,f);oH(m,g);g=KH(ae[a&7](i,j,d,e,k,m)|0)|0;ZG(m);ZG(k);ZG(j);kba(i);l=h;return g|0}function BN(){return 2352}function CN(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;m=l;l=l+32|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);DG(i,j);ZG(j);lba(i,e);if(NH(g)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;b=fg(b,(a[g>>0]|0)<0?c[i>>2]|0:i,e,f,0,0)|0;h=i}else{if((a[44376]|0)==0?_ba(44376)|0:0)tH(45504,g);if((a[44384]|0)==0?_ba(44384)|0:0)tH(45508,h);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=i+11|0;h=(a[g>>0]|0)<0?c[i>>2]|0:i;b=fg(b,h,e,f,gN(24)|0,0)|0;h=i}c[j>>2]=0;xH(k,(a[g>>0]|0)<0?c[h>>2]|0:i);wI(d,j,k);ZG(k);kba(i);l=m;return b|0}function DN(a){a=a|0;return EN(a)|0}function EN(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;iN(d,f);jN(d,36601,45508);kN(e,45504,d);a=tL(e)|0;ZG(e);ZG(d);l=b;return a|0}function FN(a){a=a|0;return 9}function GN(a){a=a|0;return JN()|0}function HN(){return 36667}function IN(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;j=l;l=l+48|0;k=j+24|0;m=j+20|0;n=j+16|0;o=j+4|0;p=j;JG(k,b);oH(m,c);oH(n,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(o,h);oH(p,i);i=KH(Rd[a&1](k,m,n,e,f,g,o,p)|0)|0;ZG(p);kba(o);ZG(n);ZG(m);kba(k);l=j;return i|0}function JN(){return 2380}function KN(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;p=r+24|0;q=r+20|0;m=r+16|0;n=r+4|0;o=r;c[m>>2]=0;HK(p,d,m);k=tL(p)|0;ZG(p);c[q>>2]=k;c[n>>2]=0;HK(p,e,n);k=tL(p)|0;ZG(p);c[m>>2]=k;if(NH(j)|0){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;k=GA(0)|0;if(k>>>0>4294967279)iba(n);if(k>>>0<11){a[n+11>>0]=k;j=n}else{s=k+16&-16;j=gba(s)|0;c[n>>2]=j;c[n+8>>2]=s|-2147483648;c[n+4>>2]=k}HA(j,0,k)|0;a[p>>0]=0;IA(j+k|0,p)}else DG(n,j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;s=qp(b,q,m,f,~~g,~~h,i,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[p>>2]=0;iJ(o,q);wI(d,p,o);ZG(o);c[p>>2]=0;iJ(o,m);wI(e,p,o);ZG(o);kba(n);l=r;return s|0}function LN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=l;l=l+48|0;m=p+32|0;n=p+28|0;o=p+24|0;q=p+20|0;j=p+16|0;r=p+12|0;k=p+8|0;s=p+4|0;t=p;c[o>>2]=0;HK(n,d,o);c[m>>2]=tL(n)|0;i=m+4|0;c[j>>2]=1;HK(q,d,j);c[i>>2]=tL(q)|0;j=m+8|0;c[k>>2]=2;HK(r,d,k);c[j>>2]=tL(r)|0;k=m+12|0;c[t>>2]=3;HK(s,d,t);c[k>>2]=tL(s)|0;ZG(s);ZG(r);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;t=pp(b,m,e,f,g,h)|0;c[n>>2]=0;iJ(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;iJ(o,i);wI(d,n,o);ZG(o);c[n>>2]=2;iJ(o,j);wI(d,n,o);ZG(o);c[n>>2]=3;iJ(o,k);wI(d,n,o);ZG(o);l=p;return t|0}function MN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+48|0;k=o+24|0;m=o+20|0;n=o+16|0;p=o+12|0;j=o+8|0;q=o+4|0;r=o;c[n>>2]=0;HK(m,d,n);c[k>>2]=tL(m)|0;i=k+4|0;c[j>>2]=1;HK(p,d,j);c[i>>2]=tL(p)|0;j=k+8|0;c[r>>2]=2;HK(q,d,r);c[j>>2]=tL(q)|0;ZG(q);ZG(p);ZG(m);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;r=op(b,k,e,f,g,h)|0;c[m>>2]=0;iJ(n,k);wI(d,m,n);ZG(n);c[m>>2]=1;iJ(n,i);wI(d,m,n);ZG(n);c[m>>2]=2;iJ(n,j);wI(d,m,n);ZG(n);l=o;return r|0}function NN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;j=n+16|0;k=n+12|0;m=n+8|0;o=n+4|0;p=n;c[m>>2]=0;HK(k,d,m);c[j>>2]=tL(k)|0;i=j+4|0;c[p>>2]=1;HK(o,d,p);c[i>>2]=tL(o)|0;ZG(o);ZG(k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;p=np(b,j,e,f,g,h)|0;c[k>>2]=0;iJ(m,j);wI(d,k,m);ZG(m);c[k>>2]=1;iJ(m,i);wI(d,k,m);ZG(m);l=n;return p|0}function ON(a){a=a|0;return 7}function PN(a){a=a|0;return SN()|0}function QN(){return 36678}function RN(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+12|0;k=h;JG(i,b);oH(j,c);d=+nH(d);e=mH(e)|0;f=mH(f)|0;JG(k,g);g=KH(Md[a&7](i,j,d,e,f,k)|0)|0;kba(k);ZG(j);kba(i);l=h;return g|0}function SN(){return 2416}function TN(b,d,e,f,g,h){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;i=m+8|0;j=m+4|0;k=m;c[k>>2]=0;HK(j,d,k);n=tL(j)|0;ZG(j);c[i>>2]=n;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[h+11>>0]|0)<0)h=c[h>>2]|0;n=lp(b,i,e,f,g,h)|0;c[j>>2]=0;iJ(k,i);wI(d,j,k);ZG(k);l=m;return n|0}function UN(a){a=a|0;return 10}function VN(a){a=a|0;return YN()|0}function WN(){return 36687}function XN(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+4|0;q=k;JG(m,b);oH(n,c);oH(o,d);e=+nH(e);f=+nH(f);g=+nH(g);JG(p,h);oH(q,i);j=+nH(j);i=KH(Sd[a&1](m,n,o,e,f,g,p,q,j)|0)|0;ZG(q);kba(p);ZG(o);ZG(n);kba(m);l=k;return i|0}function YN(){return 2444}function ZN(b,d,e,f,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=+f;h=+h;i=+i;j=j|0;k=k|0;m=+m;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0;t=l;l=l+32|0;s=t+24|0;o=t+20|0;p=t+16|0;q=t+4|0;r=t;c[p>>2]=0;HK(s,d,p);u=+QH(s);ZG(s);g[o>>2]=u;c[q>>2]=0;HK(s,e,q);u=+QH(s);ZG(s);g[p>>2]=u;if(NH(k)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;n=GA(0)|0;if(n>>>0>4294967279)iba(q);if(n>>>0<11){a[q+11>>0]=n;k=q}else{v=n+16&-16;k=gba(v)|0;c[q>>2]=k;c[q+8>>2]=v|-2147483648;c[q+4>>2]=n}HA(k,0,n)|0;a[s>>0]=0;IA(k+n|0,s)}else DG(q,k);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[j+11>>0]|0)<0)j=c[j>>2]|0;v=kp(b,o,p,f,h,i,j,(a[q+11>>0]|0)<0?c[q>>2]|0:q,m)|0;c[s>>2]=0;vI(r,o);wI(d,s,r);ZG(r);c[s>>2]=0;vI(r,p);wI(e,s,r);ZG(r);kba(q);l=t;return v|0}function _N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=l;l=l+48|0;o=r+32|0;p=r+28|0;q=r+24|0;s=r+20|0;m=r+16|0;t=r+12|0;n=r+8|0;u=r+4|0;v=r;c[q>>2]=0;HK(p,d,q);g[o>>2]=+QH(p);k=o+4|0;c[m>>2]=1;HK(s,d,m);g[k>>2]=+QH(s);m=o+8|0;c[n>>2]=2;HK(t,d,n);g[m>>2]=+QH(t);n=o+12|0;c[v>>2]=3;HK(u,d,v);g[n>>2]=+QH(u);ZG(u);ZG(t);ZG(s);ZG(p);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;v=jp(b,o,e,f,h,i,j)|0;c[p>>2]=0;vI(q,o);wI(d,p,q);ZG(q);c[p>>2]=1;vI(q,k);wI(d,p,q);ZG(q);c[p>>2]=2;vI(q,m);wI(d,p,q);ZG(q);c[p>>2]=3;vI(q,n);wI(d,p,q);ZG(q);l=r;return v|0}function $N(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+48|0;n=q+24|0;o=q+20|0;p=q+16|0;r=q+12|0;m=q+8|0;s=q+4|0;t=q;c[p>>2]=0;HK(o,d,p);g[n>>2]=+QH(o);k=n+4|0;c[m>>2]=1;HK(r,d,m);g[k>>2]=+QH(r);m=n+8|0;c[t>>2]=2;HK(s,d,t);g[m>>2]=+QH(s);ZG(s);ZG(r);ZG(o);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;t=ip(b,n,e,f,h,i,j)|0;c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);c[o>>2]=1;vI(p,k);wI(d,o,p);ZG(p);c[o>>2]=2;vI(p,m);wI(d,o,p);ZG(p);l=q;return t|0}function aO(a){a=a|0;return 8}function bO(a){a=a|0;return eO()|0}function cO(){return 36699}function dO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+16|0;k=i+12|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);JG(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;kba(m);ZG(k);kba(j);l=i;return g|0}function eO(){return 2484}function fO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=l;l=l+32|0;m=p+16|0;n=p+12|0;o=p+8|0;q=p+4|0;r=p;c[o>>2]=0;HK(n,d,o);g[m>>2]=+QH(n);k=m+4|0;c[r>>2]=1;HK(q,d,r);g[k>>2]=+QH(q);ZG(q);ZG(n);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[i+11>>0]|0)<0)i=c[i>>2]|0;r=hp(b,m,e,f,h,i,j)|0;c[n>>2]=0;vI(o,m);wI(d,n,o);ZG(o);c[n>>2]=1;vI(o,k);wI(d,n,o);ZG(o);l=p;return r|0}function gO(a){a=a|0;return 8}function hO(a){a=a|0;return jO()|0}function iO(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+32|0;j=i+8|0;k=i+4|0;m=i;JG(j,b);oH(k,c);d=+nH(d);e=+nH(e);f=+nH(f);oH(m,g);h=+nH(h);g=KH(Id[a&7](j,k,d,e,f,m,h)|0)|0;ZG(m);ZG(k);kba(j);l=i;return g|0}function jO(){return 2516}function kO(b,d,e,f,h,i,j){b=b|0;d=d|0;e=+e;f=+f;h=+h;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+32|0;n=q+20|0;o=q+16|0;p=q+12|0;m=q;c[p>>2]=0;HK(o,d,p);r=+QH(o);ZG(o);g[n>>2]=r;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(i)|0)){DG(m,i);if((a[m+11>>0]|0)<0){k=1;i=c[m>>2]|0}else{k=1;i=m}}else{k=0;i=0}b=fp(b,n,e,f,h,i,j)|0;if(k)kba(m);c[o>>2]=0;vI(p,n);wI(d,o,p);ZG(p);l=q;return b|0}function lO(a){a=a|0;return 6}function mO(a){a=a|0;return oO()|0}function nO(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;g=l;l=l+32|0;h=g+8|0;i=g+4|0;j=g;JG(h,b);oH(i,c);oH(j,d);e=mH(e)|0;f=mH(f)|0;f=KH($d[a&15](h,i,j,e,f)|0)|0;ZG(j);ZG(i);kba(h);l=g;return f|0}function oO(){return 2548}function pO(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+8|0;i=k+4|0;j=k;if((a[44392]|0)==0?_ba(44392)|0:0)tH(45512,e);c[j>>2]=0;HK(i,d,j);e=tL(i)|0;ZG(i);c[h>>2]=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;g=qq(b,h,vL(36)|0,0,f,g)|0;c[i>>2]=0;iJ(j,h);wI(d,i,j);ZG(j);l=k;return g|0}function qO(a,b,c){a=a|0;b=b|0;c=c|0;rO(b,c);return 1}function rO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=g+4|0;c[e>>2]=b;if((a[44400]|0)==0?_ba(44400)|0:0){HK(f,45512,e);DG(45516,f);ZG(f)}c[d>>2]=(a[45527]|0)<0?c[11379]|0:45516;l=g;return}function sO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if(!(NH(d)|0)){DG(g,d);if((a[g+11>>0]|0)<0){f=1;d=c[g>>2]|0}else{f=1;d=g}}else{f=0;d=0}b=kq(b,d,e)|0;if(f)kba(g);l=h;return b|0}function tO(a){a=a|0;return 4}function uO(a){a=a|0;return xO()|0}function vO(){return 36709}function wO(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;b=+nH(b);oH(f,c);oH(g,d);he[a&1](b,f,g);ZG(g);ZG(f);l=e;return}function xO(){return 2572}function yO(b,d,e){b=+b;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+32|0;f=h+16|0;g=h;if(NH(e)|0){OH(f,d);wp(b,f,0)}else{OH(f,d);DG(g,e);wp(b,f,(a[g+11>>0]|0)<0?c[g>>2]|0:g);kba(g)}l=h;return}function zO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45528,d)|0;AO(45532,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(2)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];vp(b,j,0,f,g,d,n,m,o);l=q;return}function AO(a,b){a=a|0;b=b|0;hc(c[b>>2]|0);ec(c[a>>2]|0);c[a>>2]=c[b>>2];return a|0}function BO(a,b){a=a|0;b=b|0;return +(+DO(b))}function CO(a){a=a|0;return a|0}function DO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45528,45532,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function EO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;FO(a,b,17,c,d);return}function FO(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;GO(i,e,f);h=c[b>>2]|0;b=HO(j)|0;e=IO(j)|0;f=JO(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function GO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function HO(a){a=a|0;return 2}function IO(a){a=a|0;return KO()|0}function JO(a){a=a|0;return a|0}function KO(){return 2588}function LO(a){a=a|0;return 10}function MO(a){a=a|0;return PO()|0}function NO(){return 36715}function OO(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=l;l=l+48|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;JG(m,b);oH(n,c);oH(o,d);e=mH(e)|0;f=mH(f)|0;oH(p,g);oH(q,h);oH(r,i);oH(s,j);Ne[a&3](m,n,o,e,f,p,q,r,s);ZG(s);ZG(r);ZG(q);ZG(p);ZG(o);ZG(n);kba(m);l=k;return}function PO(){return 2596}function QO(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+8|0;p=q;AO(45536,d)|0;AO(45540,e)|0;if(NH(h)|0)d=0;else{DG(o,h);d=(a[o+11>>0]|0)<0?c[o>>2]|0:o;kba(o)}if(NH(i)|0)n=3402823466385288598117041.0e14;else n=+QH(i);if(NH(j)|0)m=3402823466385288598117041.0e14;else m=+QH(j);if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=CO(3)|0;OH(p,k);c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];up(b,j,0,f,g,d,n,m,o);l=q;return}function RO(a,b){a=a|0;b=b|0;return +(+SO(b))}function SO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=l;l=l+16|0;g=d+4|0;f=d+8|0;e=d;c[g>>2]=a;iJ(e,g);EO(f,45536,45540,e);b=+QH(f);ZG(f);ZG(e);l=d;return +b}function TO(a){a=a|0;return 4}function UO(a){a=a|0;return WO()|0}function VO(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;e=l;l=l+32|0;f=e+8|0;g=e+4|0;h=e;JG(f,b);oH(g,c);oH(h,d);d=KH(Nd[a&63](f,g,h)|0)|0;ZG(h);ZG(g);kba(f);l=e;return d|0}function WO(){return 2636}function XO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(UJ(e)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=zp(b,IK(d)|0)|0}else{c[h>>2]=0;HK(g,d,h);j=tL(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=Bp(b,f,tL(e)|0)|0;c[g>>2]=0;iJ(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function YO(a){a=a|0;return 4}function ZO(a){a=a|0;return $O()|0}function _O(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=XG(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function $O(){return 2652}function aP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;c[h>>2]=0;HK(g,d,h);j=bP(g)|0;ZG(g);c[f>>2]=j;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;j=yp(b,f,e)|0;c[g>>2]=0;cP(h,f);wI(d,g,h);ZG(h);l=i;return j|0}function bP(a){a=a|0;var b=0,d=0,e=0.0,f=0;b=l;l=l+16|0;f=b+4|0;d=b;a=c[a>>2]|0;e=+cc(a|0,c[(iP(b+8|0)|0)>>2]|0,f|0);FG(d,c[f>>2]|0);a=jP(e)|0;HG(d);l=b;return a|0}function cP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;dP(e,b);b=eP()|0;c[a>>2]=oc(b|0,fP(e)|0)|0;l=d;return}function dP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;hP(e,RI(b)|0);hH(e);l=d;return}function eP(){return gP()|0}function fP(a){a=a|0;return a|0}function gP(){return 960}function hP(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function iP(a){a=a|0;return lP()|0}function jP(a){a=+a;return XG(kP(a)|0)|0}function kP(a){a=+a;return ~~a>>>0|0}function lP(){return 2668}function mP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;e=h+8|0;f=h+4|0;g=h;c[g>>2]=0;HK(f,d,g);i=IK(f)|0;ZG(f);a[e>>0]=i&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;i=xp(b,e)|0;c[f>>2]=0;JK(g,e);wI(d,f,g);ZG(g);l=h;return i|0}function nP(a){a=a|0;return 8}function oP(a){a=a|0;return qP()|0}function pP(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+32|0;j=i+20|0;k=i+16|0;m=i+12|0;n=i+8|0;o=i+4|0;p=i;oH(j,b);oH(k,c);oH(m,d);oH(n,e);f=mH(f)|0;oH(o,g);oH(p,h);h=KH(be[a&7](j,k,m,n,f,o,p)|0)|0;ZG(p);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return h|0}function qP(){return 2672}function rP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+64|0;n=h+48|0;m=h+40|0;k=h+32|0;j=h+16|0;i=h;o=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(n,a);OH(m,b);OH(k,d);PL(j,f);PL(i,g);g=Xn(o,n,m,k,e,j,i)|0;l=h;return g|0}function sP(a){a=a|0;return 7}function tP(a){a=a|0;return wP()|0}function uP(){return 36727}function vP(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+32|0;i=h+20|0;j=h+16|0;k=h+12|0;m=h+8|0;n=h+4|0;o=h;oH(i,b);oH(j,c);oH(k,d);oH(m,e);oH(n,f);oH(o,g);Ge[a&7](i,j,k,m,n,o);ZG(o);ZG(n);ZG(m);ZG(k);ZG(j);ZG(i);l=h;return}function wP(){return 2704}function xP(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+64|0;m=g+48|0;k=g+40|0;j=g+32|0;i=g+16|0;h=g;n=c[(c[(Ch()|0)+136>>2]|0)+4>>2]|0;OH(m,a);OH(k,b);OH(j,d);PL(i,e);PL(h,f);Wn(n,m,k,j,i,h);l=g;return}function yP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Tn(b,e)|0;l=f;return e|0}function zP(a){a=a|0;return 2}function AP(a){a=a|0;return CP()|0}function BP(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);b=KH(Bd[a&63](d)|0)|0;kba(d);l=c;return b|0}function CP(){return 2732}function DP(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;return Sn(b)|0}function EP(a){a=a|0;return 3}function FP(a){a=a|0;return HP()|0}function GP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+4|0;f=d;JG(e,b);oH(f,c);c=KH(Fd[a&63](e,f)|0)|0;ZG(f);kba(e);l=d;return c|0}function HP(){return 2740}function IP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(e,d);e=Rn(b,e)|0;l=f;return e|0}function JP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function KP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Go(36509,d);l=e;return}function LP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function MP(a){a=a|0;return 3}function NP(a){a=a|0;return PP()|0}function OP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+32|0;e=d+12|0;f=d;JG(e,b);JG(f,c);ne[a&127](e,f);kba(f);kba(e);l=d;return}function PP(){return 2752}function QP(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[e>>2]=d;On(b,36509,e);l=f;return}function RP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function SP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Ln(36509,d);l=e;return}function TP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function UP(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Jn(36509,d);l=e;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function WP(a){a=a|0;return 3}function XP(a){a=a|0;return ZP()|0}function YP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+12|0;f=d;oH(e,b);JG(f,c);ne[a&127](e,f);kba(f);ZG(e);l=d;return}function ZP(){return 2764}function _P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;f=g;e=g+8|0;PL(e,b);if((a[d+11>>0]|0)<0)d=c[d>>2]|0;c[f>>2]=d;Hn(e,36509,f);l=g;return}function $P(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function aQ(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;c[d>>2]=b;Fn(36509,d);l=e;return}function bQ(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;En(b,0);return}function cQ(a){a=a|0;return 2}function dQ(a){a=a|0;return fQ()|0}function eQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+4|0;e=d;oH(e,b);c[f>>2]=Bd[a&63](e)|0;b=RI(f)|0;ZG(e);l=d;return b|0}function fQ(){return 2776}function gQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)b=Do(tL(b)|0)|0;else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);b=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0;kba(d)}l=h;return b|0}function hQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h+4|0;e=h;pL(e,b);DG(d,e);f=GA(36525)|0;i=a[d+11>>0]|0;if((f|0)==((i<<24>>24<0?c[d+4>>2]|0:i&255)|0)){i=(nba(d,0,-1,36525,f)|0)==0;kba(d);ZG(e);if(i)Ao(tL(b)|0);else g=5}else{kba(d);ZG(e);g=5}if((g|0)==5){DG(d,b);go((a[d+11>>0]|0)<0?c[d>>2]|0:d);kba(d)}l=h;return}function iQ(a){a=a|0;return 3}function jQ(a){a=a|0;return mQ()|0}function kQ(){return 36736}function lQ(a,b,c){a=a|0;b=b|0;c=+c;b=mH(b)|0;c=+nH(c);je[a&7](b,c);return}function mQ(){return 2784}function nQ(a){a=a|0;return 2}function oQ(a){a=a|0;return rQ()|0}function pQ(){return 36741}function qQ(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;g[e>>2]=+xd[a&3](b);c=+DH(e);l=d;return +c}function rQ(){return 2796}function sQ(a){a=a|0;return 1}function tQ(){return 36745}function uQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Ad[a&31]()|0;a=jI(d)|0;l=b;return a|0}function vQ(a){a=a|0;return 4}function wQ(a){a=a|0;return yQ()|0}function xQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;b=mH(b)|0;oH(f,c);d=ZH(d)|0;te[a&63](b,f,d);ZG(f);l=e;return}function yQ(){return 2804}function zQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if(NH(d)|0)Gr(b,0,e);else{DG(f,d);Gr(b,(a[f+11>>0]|0)<0?c[f>>2]|0:f,e);kba(f)}l=g;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;rn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function CQ(a){a=a|0;return 2}function DQ(a){a=a|0;return GQ()|0}function EQ(){return 36748}function FQ(a,b){a=a|0;b=b|0;b=aJ(b)|0;ie[a&127](b);return}function GQ(){return 2820}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;ln(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function IQ(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Xp(c);l=b;return}function JQ(a){a=a|0;return 2}function KQ(a){a=a|0;return MQ()|0}function LQ(a,b){a=a|0;b=b|0;b=ZH(b)|0;ie[a&127](b);return}function MQ(){return 2828}function NQ(a){a=a|0;return 3}function OQ(a){a=a|0;return QQ()|0}function PQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;h=e+8|0;f=e+4|0;g=e;oH(f,b);oH(g,d);c[h>>2]=Fd[a&63](f,g)|0;d=RI(h)|0;ZG(g);ZG(f);l=e;return d|0}function QQ(){return 2836}function RQ(a,b){a=a|0;b=b|0;a=tL(a)|0;return Lf(a,+QH(b))|0}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;jn(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function TQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn()|0;UQ(a,d);l=b;return}function UQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;VQ(e,b);b=WQ()|0;c[a>>2]=oc(b|0,XQ(e)|0)|0;l=d;return}function VQ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;_Q(e,ZQ(c[b>>2]|0)|0);hH(e);l=d;return}function WQ(){return YQ()|0}function XQ(a){a=a|0;return a|0}function YQ(){return 136}function ZQ(a){a=a|0;return a|0}function _Q(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function $Q(a){a=a|0;return 2}function aR(a){a=a|0;return cR()|0}function bR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;b=mH(b)|0;ne[a&127](d,b);b=YG(d)|0;ZG(d);l=c;return b|0}function cR(){return 2848}function dR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=Nf(b)|0;eR(a,e);l=d;return}function eR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;fR(e,b);b=gR()|0;c[a>>2]=oc(b|0,hR(e)|0)|0;l=d;return}function fR(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;kR(e,jR(c[b>>2]|0)|0);hH(e);l=d;return}function gR(){return iR()|0}function hR(a){a=a|0;return a|0}function iR(){return 160}function jR(a){a=a|0;return a|0}function kR(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function lR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;e=i+4|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+QH(d));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){OH(e,d);Uk(b,e)}l=i;return}function mR(a){a=a|0;return 2}function nR(a){a=a|0;return pR()|0}function oR(a,b){a=a|0;b=b|0;b=mH(b)|0;ie[a&127](b);return}function pR(){return 2856}function qR(a){a=a|0;return 3}function rR(a){a=a|0;return tR()|0}function sR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;b=mH(b)|0;oH(e,c);ne[a&127](b,e);ZG(e);l=d;return}function tR(){return 2864}function uR(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;e=i+8|0;f=i;pL(f,d);DG(e,f);g=GA(36525)|0;j=a[e+11>>0]|0;if((g|0)==((j<<24>>24<0?c[e+4>>2]|0:j&255)|0)){j=(nba(e,0,-1,36525,g)|0)==0;kba(e);ZG(f);if(j)Tk(b,+((bP(d)|0)>>>0));else h=5}else{kba(e);ZG(f);h=5}if((h|0)==5){PL(e,d);Sk(b,e)}l=i;return}function vR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36779;fba(36180,b)|0;l=a;return}function wR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function xR(a){a=a|0;return 1}function yR(a){a=a|0;return AR()|0}function zR(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=YG(c)|0;ZG(c);l=b;return a|0}function AR(){return 2876}function BR(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=36779;fba(36180,d)|0;lK(a);l=b;return}function CR(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=36896;fba(36180,b)|0;l=a;return}function DR(a){a=a|0;return 3}function ER(a){a=a|0;return HR()|0}function FR(){return 37028}function GR(a,b,c){a=a|0;b=+b;c=+c;b=+nH(b);c=+nH(c);fe[a&3](b,c);return}function HR(){return 2880}function IR(b){b=b|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Sm(b);return}function JR(a){a=a|0;return 4}function KR(a){a=a|0;return MR()|0}function LR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;JG(f,b);c=ZH(c)|0;d=mH(d)|0;te[a&63](f,c,d);kba(f);l=e;return}function MR(){return 2892}function NR(b,d,e){b=b|0;d=d|0;e=e|0;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;Rm(b,d,e);return}function OR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Nm(b,f,e);l=g;return}function PR(a){a=a|0;return 4}function QR(a){a=a|0;return SR()|0}function RR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;te[a&63](f,g,d);ZG(g);kba(f);l=e;return}function SR(){return 2908}function TR(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;OH(f,d);Lm(b,f,e);l=g;return}function UR(){il();return}function VR(a,b){a=a|0;b=b|0;Om(a,b);return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Mm(d,b);l=c;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);Km(d,b);l=c;return}function YR(a){a=a|0;return 3}function ZR(a){a=a|0;return $R()|0}function _R(a,b,c){a=a|0;b=b|0;c=c|0;b=ZH(b)|0;c=mH(c)|0;ne[a&127](b,c);return}function $R(){return 2924}function aS(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;OH(c,a);Um(c);l=b;return}function bS(a){a=a|0;return 5}function cS(a){a=a|0;return fS()|0}function dS(){return 37033}function eS(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,i=0,j=0;f=l;l=l+16|0;g=f+12|0;h=f+8|0;i=f+4|0;j=f;oH(g,b);oH(h,c);oH(i,d);oH(j,e);ye[a&15](g,h,i,j);ZG(j);ZG(i);ZG(h);ZG(g);l=f;return}function fS(){return 2936}function gS(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;if(!(UJ(d)|0)?!(NH(d)|0):0){if((a[44408]|0)==0?_ba(44408)|0:0)tH(45544,d);if((a[44416]|0)==0?_ba(44416)|0:0)tH(45548,e);OH(f,b);OH(g,c);Tm(f,g,iS(67)|0,0)}else{OH(f,b);OH(g,c);Tm(f,g,0,0)}l=h;return}function hS(a){a=a|0;jS(a);return}function iS(a){a=a|0;return a|0}function jS(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+16|0;f=b+4|0;d=b+8|0;e=b;c[f>>2]=a;kS(d,f);jN(d,36601,45548);kN(e,45544,d);ZG(e);ZG(d);l=b;return}function kS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;lS(e,b);b=mS()|0;c[a>>2]=oc(b|0,nS(e)|0)|0;l=d;return}function lS(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;qS(e,pS(c[b>>2]|0)|0);hH(e);l=d;return}function mS(){return oS()|0}function nS(a){a=a|0;return a|0}function oS(){return 176}function pS(a){a=a|0;return a|0}function qS(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function rS(a){a=a|0;return 3}function sS(a){a=a|0;return uS()|0}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=l;l=l+16|0;e=d;oH(e,b);c=mH(c)|0;ne[a&127](e,c);ZG(e);l=d;return}function uS(){return 2956}function vS(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,a);si(d,b);l=c;return}function wS(a){a=a|0;return 4}function xS(a){a=a|0;return zS()|0}function yS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;oH(f,b);c=mH(c)|0;oH(g,d);te[a&63](f,c,g);ZG(g);ZG(f);l=e;return}function zS(){return 2968}function AS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;OH(f,a);OH(e,c);Fk(f,b,e);l=d;return}function BS(a){a=a|0;return 2}function CS(a){a=a|0;return FS()|0}function DS(){return 37089}function ES(a,b){a=a|0;b=+b;b=+nH(b);ee[a&15](b);return}function FS(){return 2984}function GS(a){a=a|0;return 1}function HS(a){a=a|0;return KH(Ad[a&31]()|0)|0}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Qk(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;Jm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function KS(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=fn()|0;IJ(a,d);l=b;return}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;$m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function MS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;_m(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function NS(a){a=a|0;return 1}function OS(){return 37093}function PS(a){a=a|0;var b=0.0,c=0,d=0;c=l;l=l+16|0;d=c;g[d>>2]=+wd[a&31]();b=+DH(d);l=c;return +b}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;bm(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function RS(a){a=a|0;return 2}function SS(a){a=a|0;return US()|0}function TS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+4|0;d=c;oH(d,b);ne[a&127](e,d);b=YG(e)|0;ZG(e);ZG(d);l=c;return b|0}function US(){return 2992}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;e=c+8|0;d=c;qh(e);tH(d,b);uH(a,e,d);ZG(d);l=c;return}function WS(a){a=a|0;return 5}function XS(a){a=a|0;return ZS()|0}function YS(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;f=l;l=l+16|0;g=f+4|0;h=f;oH(g,b);oH(h,c);d=ZH(d)|0;e=mH(e)|0;e=KH(Wd[a&31](g,h,d,e)|0)|0;ZG(h);ZG(g);l=f;return e|0}function ZS(){return 3e3}function _S(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+32|0;g=i+8|0;h=i;pL(g,b);xH(h,36532);j=qL(g,h)|0;ZG(h);ZG(g);if(j){DG(g,b);j=a[g+11>>0]|0;b=c[g>>2]|0;OH(h,d);b=Mk(j<<24>>24<0?b:g,h,e,f)|0;kba(g)}else{b=bP(b)|0;OH(g,d);b=Ok(b,g,e,f)|0}l=i;return b|0}function $S(a){a=a|0;return 4}function aT(a){a=a|0;return cT()|0}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e+4|0;g=e;JG(f,b);oH(g,c);d=mH(d)|0;d=KH(Nd[a&63](f,g,d)|0)|0;ZG(g);kba(f);l=e;return d|0}function cT(){return 3020}function dT(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;f=i+8|0;g=i+4|0;h=i;if(NH(d)|0){if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,0,e)|0}else{c[h>>2]=0;HK(g,d,h);j=IK(g)|0;ZG(g);a[f>>0]=j&1;if((a[b+11>>0]|0)<0)b=c[b>>2]|0;b=ti(b,f,e)|0;c[g>>2]=0;JK(h,f);wI(d,g,h);ZG(h)}l=i;return b|0}function eT(a){a=a|0;wv(a);return}function fT(a){a=a|0;vv(a);return}function gT(a){a=a|0;return 2}function hT(a){a=a|0;return kT()|0}function iT(a,b){a=a|0;b=b|0;b=jT(b)|0;ie[a&127](b);return}function jT(a){a=a|0;return a|0}function kT(){return 3036}function lT(a){a=a|0;uv(a);return}function mT(a){a=a|0;return 1}function nT(a){a=a|0;var b=0,c=0;b=l;l=l+16|0;c=b;ie[a&127](c);a=wJ(c)|0;kba(c);l=b;return a|0}function oT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+16|0;d=g;e=uh()|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11)a[b+11>>0]=f;else{i=f+16&-16;h=gba(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f;b=h}HA(b,e,f)|0;a[d>>0]=0;IA(b+f|0,d);l=g;return}function pT(a){a=a|0;return 2}function qT(a){a=a|0;return sT()|0}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;JG(d,b);ie[a&127](d);kba(d);l=c;return}function sT(){return 3044}function tT(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(!(NH(b)|0)){a[c>>0]=a[d>>0]|0;uT(b,c)|0}l=d;return}function uT(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(vT(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=wT(f)|0;HG(e);l=d;return b|0}function vT(a){a=a|0;return yT()|0}function wT(a){a=+a;return jT(xT(a)|0)|0}function xT(a){a=+a;return ~~a>>>0|0}function yT(){return 3052}function zT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(NH(b)|0)Qr(0);else{c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;Qr(d);c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function AT(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g+8|0;e=g+4|0;f=g;if(!(NH(b)|0)){c[f>>2]=0;HK(e,b,f);h=IK(e)|0;ZG(e);a[d>>0]=h&1;c[e>>2]=0;JK(f,d);wI(b,e,f);ZG(f)}l=g;return}function BT(){hj();return}function CT(a){a=a|0;return 1}function DT(a){a=a|0;return GT()|0}function ET(){return 37123}function FT(a){a=a|0;de[a&63]();return}function GT(){return 3056}function HT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Eh()|0;IT(a,d);l=b;return}function IT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;JT(e,b);b=KT()|0;c[a>>2]=oc(b|0,LT(e)|0)|0;l=d;return}function JT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;OT(e,NT(c[b>>2]|0)|0);hH(e);l=d;return}function KT(){return MT()|0}function LT(a){a=a|0;return a|0}function MT(){return 224}function NT(a){a=a|0;return a|0}function OT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function PT(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=Dh()|0;QT(a,d);l=b;return}function QT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;RT(e,b);b=ST()|0;c[a>>2]=oc(b|0,TT(e)|0)|0;l=d;return}function RT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;WT(e,VT(c[b>>2]|0)|0);hH(e);l=d;return}function ST(){return UT()|0}function TT(a){a=a|0;return a|0}function UT(){return 200}function VT(a){a=a|0;return a|0}function WT(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function XT(b){b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;if(!(a[46145]|0)){a[46145]=1;c[(Ch()|0)+16>>2]=0;c[(Ch()|0)+20>>2]=0}c[d>>2]=Ch()|0;YT(b,d);l=e;return}function YT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZT(e,b);b=_T()|0;c[a>>2]=oc(b|0,$T(e)|0)|0;l=d;return}function ZT(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cU(e,bU(c[b>>2]|0)|0);hH(e);l=d;return}function _T(){return aU()|0}function $T(a){a=a|0;return a|0}function aU(){return 248}function bU(a){a=a|0;return a|0}function cU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}wh(c);l=d;return}function eU(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(fU(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=gU(f)|0;HG(e);l=d;return b|0}function fU(a){a=a|0;return jU()|0}function gU(a){a=+a;return iU(hU(a)|0)|0}function hU(a){a=+a;return ~~a>>>0|0}function iU(a){a=a|0;return a|0}function jU(){return 3060}function kU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=vh()|0;c[b>>2]=e;if(!e)lK(a);else lU(a,b);l=d;return}function lU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mU(e,b);b=nU()|0;c[a>>2]=oc(b|0,oU(e)|0)|0;l=d;return}function mU(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rU(e,qU(c[b>>2]|0)|0);hH(e);l=d;return}function nU(){return pU()|0}function oU(a){a=a|0;return a|0}function pU(){return 272}function qU(a){a=a|0;return a|0}function rU(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function sU(a){a=a|0;return 2}function tU(a){a=a|0;return vU()|0}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;oH(d,b);ie[a&127](d);ZG(d);l=c;return}function vU(){return 3064}function wU(b){b=b|0;var c=0,d=0;d=l;l=l+16|0;c=d+1|0;if(NH(b)|0)c=0;else{a[c>>0]=a[d>>0]|0;c=eU(b,c)|0}zh(c);l=d;return}function xU(a){a=a|0;return 1}function yU(a){a=a|0;return AR()|0}function zU(a){a=a|0;var b=0,d=0,e=0;d=l;l=l+16|0;b=d;e=xh(0)|0;c[b>>2]=e;if(!e)lK(a);else iJ(a,b);l=d;return}function AU(){return CU()|0}function BU(a){a=a|0;return a|0}function CU(){return 960}function DU(){return FU()|0}function EU(a){a=a|0;return a|0}function FU(){return 8}function GU(a){a=a|0;qH(a,1);return}function HU(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;IU();c=JU()|0;a=KU()|0;i=LU()|0;h=MU()|0;g=NU()|0;f=OU()|0;e=tQ()|0;d=PU()|0;b=PU()|0;Rb(i|0,h|0,g|0,f|0,e|0,25,d|0,c|0,b|0,a|0,37203,ET()|0,68);return}function IU(){return}function JU(){return 0}function KU(){return 0}function LU(){return VU()|0}function MU(){return UU()|0}function NU(){return TU()|0}function OU(){return 0}function PU(){return 37232}function QU(a){a=a|0;return SU(a)|0}function RU(a){a=a|0;if(a|0)hba(a);return}function SU(a){a=a|0;return 296}function TU(){return 304}function UU(){return 320}function VU(){return 296}function WU(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;XU();j=YU()|0;h=ZU()|0;n=_U()|0;m=$U()|0;k=aV()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,26,d|0,j|0,i|0,h|0,37269,ET()|0,69);h=_U()|0;i=dV(b)|0;j=vT(b)|0;Sb(h|0,i|0,j|0,tQ()|0,27,17);c[b>>2]=0;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37280,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(41)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37286,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=12;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37303,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=16;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37318,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(42)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37335,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(43)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37352,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=36;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37372,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=40;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37386,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=44;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37402,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=48;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37416,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(44)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37432,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=60;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37448,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=64;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37462,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=lV(45)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37478,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(46)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37493,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(47)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37513,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=92;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37534,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=96;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37548,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=100;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37566,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=104;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37580,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=108;h=_U()|0;d=gV()|0;f=pQ()|0;g=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(h|0,37598,d|0,f|0,4,g|0,i|0,j|0,2,hV(b)|0);c[b>>2]=112;j=_U()|0;i=gV()|0;g=pQ()|0;f=hV(b)|0;d=gV()|0;h=kQ()|0;Ub(j|0,37610,i|0,g|0,4,f|0,d|0,h|0,2,hV(b)|0);c[b>>2]=lV(48)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37623,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=lV(49)|0;g=_U()|0;f=mV(e)|0;d=nV(e)|0;h=VG()|0;Tb(g|0,37642,f|0,d|0,h|0,28,oV(b)|0,0);c[b>>2]=lV(50)|0;h=_U()|0;d=mV(e)|0;f=nV(e)|0;g=VG()|0;Tb(h|0,37666,d|0,f|0,g|0,28,oV(b)|0,0);c[b>>2]=140;g=_U()|0;f=gV()|0;d=pQ()|0;h=hV(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,37692,f|0,d|0,4,h|0,i|0,j|0,2,hV(b)|0);c[b>>2]=144;j=_U()|0;i=zV()|0;h=VG()|0;d=AV(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,37709,i|0,h|0,29,d|0,f|0,g|0,16,AV(b)|0);c[b>>2]=145;g=_U()|0;f=zV()|0;d=VG()|0;h=AV(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,37726,f|0,d|0,29,h|0,i|0,j|0,16,AV(b)|0);c[b>>2]=148;j=_U()|0;i=gV()|0;h=pQ()|0;d=hV(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,37742,i|0,h|0,4,d|0,f|0,g|0,2,hV(b)|0);c[b>>2]=EV(17)|0;g=_U()|0;f=FV(e)|0;d=GV(e)|0;h=nI()|0;Tb(g|0,37763,f|0,d|0,h|0,37,HV(b)|0,0);c[b>>2]=KV(38)|0;h=_U()|0;d=LV(e)|0;f=MV(e)|0;g=XH()|0;Tb(h|0,37775,d|0,f|0,g|0,18,NV(b)|0,0);c[b>>2]=4;c[b+4>>2]=0;g=_U()|0;f=PV(e)|0;e=QV(e)|0;d=kQ()|0;Tb(g|0,37787,f|0,e|0,d|0,3,RV(b)|0,0);l=a;return}function XU(){return}function YU(){return 0}function ZU(){return 0}function _U(){return AW()|0}function $U(){return zW()|0}function aV(){return yW()|0}function bV(a){a=a|0;return xW(a)|0}function cV(a){a=a|0;if(a|0)hba(a);return}function dV(a){a=a|0;return 1}function eV(a){a=a|0;return VT(Ad[a&31]()|0)|0}function fV(){var a=0;a=gba(872)|0;We(a);return a|0}function gV(){return wW()|0}function hV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function iV(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function jV(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function kV(a,b){a=a|0;b=b|0;vW(a,b);return}function lV(a){a=a|0;return a|0}function mV(a){a=a|0;return 2}function nV(a){a=a|0;return uW()|0}function oV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=jT(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qV(a,b){a=a|0;b=b|0;tW(a,b);return}function rV(a,b){a=a|0;b=b|0;sW(a,b);return}function sV(a,b){a=a|0;b=b|0;rW(a,b);return}function tV(a,b){a=a|0;b=b|0;qW(a,b);return}function uV(a,b){a=a|0;b=b|0;pW(a,b);return}function vV(a,b){a=a|0;b=b|0;oW(a,b);return}function wV(a,b){a=a|0;b=b|0;nW(a,b);return}function xV(a,b){a=a|0;b=b|0;mW(a,b);return}function yV(a,b){a=a|0;b=b|0;eW(a,b);return}function zV(){return dW()|0}function AV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function BV(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function CV(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function DV(a,b,c){a=a|0;b=b|0;c=c|0;XV(a,b,c);return}function EV(a){a=a|0;return a|0}function FV(a){a=a|0;return 3}function GV(a){a=a|0;return WV()|0}function HV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function IV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function JV(a,b,c){a=a|0;b=b|0;c=c|0;return VV(a,b,c)|0}function KV(a){a=a|0;return a|0}function LV(a){a=a|0;return 4}function MV(a){a=a|0;return UV()|0}function NV(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OV(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;a=c[a>>2]|0;b=jT(b)|0;d=mH(d)|0;oH(g,e);e=KH(Nd[a&63](b,d,g)|0)|0;ZG(g);l=f;return e|0}function PV(a){a=a|0;return 3}function QV(a){a=a|0;return TV()|0}function RV(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SV(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0;f=jT(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;d=+nH(d);je[b&7](a,d);return}function TV(){return 3072}function UV(){return 3084}function VV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(b>>>0<45){a=a+152+(b<<4)|0;PL(e,d);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];a=1}else a=0;l=f;return a|0}function WV(){return 3100}function XV(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;c[e>>2]=b+152+(d<<4);if(d>>>0<45)YV(a,e);else GU(a);l=f;return}function YV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ZV(e,b);b=_V()|0;c[a>>2]=oc(b|0,$V(e)|0)|0;l=d;return}function ZV(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;cW(e,bW(c[b>>2]|0)|0);hH(e);l=d;return}function _V(){return aW()|0}function $V(a){a=a|0;return a|0}function aW(){return 336}function bW(a){a=a|0;return a|0}function cW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function dW(){return 904}function eW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+132;fW(a,e);l=d;return}function fW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;gW(e,b);b=hW()|0;c[a>>2]=oc(b|0,iW(e)|0)|0;l=d;return}function gW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;lW(e,kW(c[b>>2]|0)|0);hH(e);l=d;return}function hW(){return jW()|0}function iW(a){a=a|0;return a|0}function jW(){return 352}function kW(a){a=a|0;return a|0}function lW(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+124;fW(a,e);l=d;return}function nW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+116;fW(a,e);l=d;return}function oW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+84;fW(a,e);l=d;return}function pW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+76;fW(a,e);l=d;return}function qW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+68;fW(a,e);l=d;return}function rW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+52;fW(a,e);l=d;return}function sW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+28;fW(a,e);l=d;return}function tW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;fW(a,e);l=d;return}function uW(){return 3112}function vW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;fW(a,e);l=d;return}function wW(){return 984}function xW(a){a=a|0;return 216}function yW(){return 368}function zW(){return 200}function AW(){return 216}function BW(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;CW();j=DW()|0;g=EW()|0;n=FW()|0;m=GW()|0;k=HW()|0;d=OU()|0;h=tQ()|0;i=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,d|0,h|0,28,i|0,j|0,f|0,g|0,37834,ET()|0,70);c[b>>2]=LW(51)|0;g=FW()|0;f=MW(e)|0;j=NW(e)|0;i=VG()|0;Tb(g|0,37842,f|0,j|0,i|0,30,OW(b)|0,0);c[b>>2]=8;i=FW()|0;j=gV()|0;f=pQ()|0;g=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(i|0,37857,j|0,f|0,5,g|0,h|0,d|0,4,QW(b)|0);c[b>>2]=24;d=FW()|0;h=TW()|0;g=VG()|0;f=UW(b)|0;j=TW()|0;i=lL()|0;Ub(d|0,37867,h|0,g|0,31,f|0,j|0,i|0,18,UW(b)|0);c[b>>2]=YW(32)|0;i=FW()|0;j=ZW(e)|0;f=_W(e)|0;g=nI()|0;Tb(i|0,37876,j|0,f|0,g|0,39,$W(b)|0,0);c[b>>2]=cX(40)|0;g=FW()|0;f=dX(e)|0;j=eX(e)|0;i=XH()|0;Tb(g|0,37888,f|0,j|0,i|0,19,fX(b)|0,0);c[b>>2]=LW(52)|0;i=FW()|0;j=MW(e)|0;f=NW(e)|0;g=VG()|0;Tb(i|0,37900,j|0,f|0,g|0,30,OW(b)|0,0);c[b>>2]=140;g=FW()|0;f=gV()|0;j=pQ()|0;i=QW(b)|0;h=gV()|0;d=kQ()|0;Ub(g|0,37909,f|0,j|0,5,i|0,h|0,d|0,4,QW(b)|0);c[b>>2]=LW(53)|0;d=FW()|0;h=MW(e)|0;i=NW(e)|0;j=VG()|0;Tb(d|0,37925,h|0,i|0,j|0,30,OW(b)|0,0);c[b>>2]=LW(54)|0;j=FW()|0;i=MW(e)|0;h=NW(e)|0;d=VG()|0;Tb(j|0,37952,i|0,h|0,d|0,30,OW(b)|0,0);c[b>>2]=lX(33)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,37964,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(42)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,37979,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=220;d=FW()|0;h=gV()|0;i=pQ()|0;j=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(d|0,37994,h|0,i|0,5,j|0,f|0,g|0,4,QW(b)|0);c[b>>2]=228;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38005,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=229;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38021,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=230;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38029,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=231;d=FW()|0;h=zV()|0;i=VG()|0;j=wX(b)|0;f=zV()|0;g=lL()|0;Ub(d|0,38038,h|0,i|0,34,j|0,f|0,g|0,19,wX(b)|0);c[b>>2]=232;g=FW()|0;f=zV()|0;j=VG()|0;i=wX(b)|0;h=zV()|0;d=lL()|0;Ub(g|0,38045,f|0,j|0,34,i|0,h|0,d|0,19,wX(b)|0);c[b>>2]=lX(35)|0;d=FW()|0;h=mX(e)|0;i=nX(e)|0;j=nI()|0;Tb(d|0,38054,h|0,i|0,j|0,41,oX(b)|0,0);c[b>>2]=rX(43)|0;j=FW()|0;i=sX(e)|0;h=tX(e)|0;d=XH()|0;Tb(j|0,38068,i|0,h|0,d|0,20,uX(b)|0,0);c[b>>2]=CX(6)|0;d=FW()|0;h=DX(e)|0;i=EX(e)|0;j=FX()|0;Tb(d|0,38082,h|0,i|0,j|0,1,GX(b)|0,0);c[b>>2]=JX(2)|0;j=FW()|0;i=KX(e)|0;h=LX(e)|0;d=MX()|0;Tb(j|0,38097,i|0,h|0,d|0,1,NX(b)|0,0);c[b>>2]=55;c[b+4>>2]=0;d=FW()|0;h=PX(e)|0;i=QX(e)|0;j=lL()|0;Tb(d|0,38112,h|0,i|0,j|0,20,RX(b)|0,0);c[b>>2]=864;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38130,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=865;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38147,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=866;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38167,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=867;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38181,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=868;j=FW()|0;i=zV()|0;h=VG()|0;d=wX(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,38195,i|0,h|0,34,d|0,f|0,g|0,19,wX(b)|0);c[b>>2]=869;g=FW()|0;f=zV()|0;d=VG()|0;h=wX(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38205,f|0,d|0,34,h|0,i|0,j|0,19,wX(b)|0);c[b>>2]=872;j=FW()|0;i=gV()|0;h=pQ()|0;d=QW(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,38216,i|0,h|0,5,d|0,f|0,g|0,4,QW(b)|0);c[b>>2]=LW(56)|0;g=FW()|0;f=MW(e)|0;d=NW(e)|0;h=VG()|0;Tb(g|0,38226,f|0,d|0,h|0,30,OW(b)|0,0);c[b>>2]=VX(21)|0;h=FW()|0;d=WX(e)|0;f=XX(e)|0;g=nI()|0;Tb(h|0,38240,d|0,f|0,g|0,44,YX(b)|0,0);c[b>>2]=CX(7)|0;g=FW()|0;f=DX(e)|0;d=EX(e)|0;h=FX()|0;Tb(g|0,38261,f|0,d|0,h|0,1,GX(b)|0,0);c[b>>2]=CX(8)|0;h=FW()|0;d=DX(e)|0;f=EX(e)|0;g=FX()|0;Tb(h|0,38284,d|0,f|0,g|0,1,GX(b)|0,0);c[b>>2]=CX(9)|0;g=FW()|0;f=DX(e)|0;e=EX(e)|0;d=FX()|0;Tb(g|0,38306,f|0,e|0,d|0,1,GX(b)|0,0);l=a;return}function CW(){return}function DW(){return 0}function EW(){return 0}function FW(){return WY()|0}function GW(){return VY()|0}function HW(){return UY()|0}function IW(a){a=a|0;return TY(a)|0}function JW(a){a=a|0;if(a|0)hba(a);return}function KW(a,b){a=a|0;b=b|0;SY(a,b);return}function LW(a){a=a|0;return a|0}function MW(a){a=a|0;return 2}function NW(a){a=a|0;return RY()|0}function OW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function PW(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=pY(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function QW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function RW(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function SW(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function TW(){return QY()|0}function UW(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function VW(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function WW(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function XW(a,b){a=a|0;b=b|0;return PY(a,b)|0}function YW(a){a=a|0;return a|0}function ZW(a){a=a|0;return 3}function _W(a){a=a|0;return OY()|0}function $W(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function aX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;c[f>>2]=Fd[a&63](b,d)|0;d=jI(f)|0;l=e;return d|0}function bX(a,b,c){a=a|0;b=b|0;c=c|0;return NY(a,b,c)|0}function cX(a){a=a|0;return a|0}function dX(a){a=a|0;return 4}function eX(a){a=a|0;return MY()|0}function fX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function gX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=mH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function hX(a,b){a=a|0;b=b|0;EY(a,b);return}function iX(a,b){a=a|0;b=b|0;DY(a,b);return}function jX(a,b){a=a|0;b=b|0;CY(a,b);return}function kX(a,b){a=a|0;b=b|0;return BY(a,b)|0}function lX(a){a=a|0;return a|0}function mX(a){a=a|0;return 3}function nX(a){a=a|0;return AY()|0}function oX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pX(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;return KH(Fd[a&63](b,d)|0)|0}function qX(a,b,c){a=a|0;b=b|0;c=c|0;return zY(a,b,c)|0}function rX(a){a=a|0;return a|0}function sX(a){a=a|0;return 4}function tX(a){a=a|0;return yY()|0}function uX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=ZH(e)|0;return KH(Nd[a&63](b,d,e)|0)|0}function wX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xX(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function yX(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function zX(a,b){a=a|0;b=b|0;return xY(a,b)|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;return wY(a,b,c)|0}function BX(a,b){a=a|0;b=b|0;return +(+vY(a,b))}function CX(a){a=a|0;return a|0}function DX(a){a=a|0;return 3}function EX(a){a=a|0;return uY()|0}function FX(){return 38360}function GX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function HX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,h=0;f=l;l=l+16|0;h=f;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;g[h>>2]=+yd[a&15](b,d);e=+DH(h);l=f;return +e}function IX(a,b,c){a=a|0;b=b|0;c=+c;return tY(a,b,c)|0}function JX(a){a=a|0;return a|0}function KX(a){a=a|0;return 4}function LX(a){a=a|0;return sY()|0}function MX(){return 38354}function NX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function OX(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;a=c[a>>2]|0;b=pY(b)|0;d=mH(d)|0;e=+nH(e);return KH(Gd[a&3](b,d,e)|0)|0}function PX(a){a=a|0;return 3}function QX(a){a=a|0;return rY()|0}function RX(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function SX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=pY(b)|0;b=c[a>>2]|0;e=c[a+4>>2]|0;a=f+(e>>1)|0;if(e&1)b=c[(c[a>>2]|0)+b>>2]|0;f=qY(d)|0;ne[b&127](a,f);return}function TX(a,b){a=a|0;b=b|0;oY(a,b);return}function UX(a,b,c){a=a|0;b=b|0;c=c|0;gY(a,b,c);return}function VX(a){a=a|0;return a|0}function WX(a){a=a|0;return 3}function XX(a){a=a|0;return fY()|0}function YX(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function ZX(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=eY(b)|0;d=mH(d)|0;te[a&63](f,b,d);d=YG(f)|0;ZG(f);l=e;return d|0}function _X(a,b){a=a|0;b=b|0;return +(+dY(a,b))}function $X(a,b){a=a|0;b=b|0;return +(+cY(a,b))}function aY(a,b){a=a|0;b=b|0;return +(+bY(a,b))}function bY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+5180+(b<<2)>>2];else c=-1.0;return +c}function cY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<512)c=+g[a+1084+(b<<2)>>2];else c=-1.0;return +c}function dY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<5)c=+g[a+984+(b<<2)>>2];else c=-1.0;return +c}function eY(a){a=a|0;return a|0}function fY(){return 3120}function gY(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(d>>>0<5){c[e>>2]=b+904+(d<<3);hY(a,e)}else GU(a);l=f;return}function hY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;iY(e,b);b=jY()|0;c[a>>2]=oc(b|0,kY(e)|0)|0;l=d;return}function iY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;nY(e,mY(c[b>>2]|0)|0);hH(e);l=d;return}function jY(){return lY()|0}function kY(a){a=a|0;return a|0}function lY(){return 400}function mY(a){a=a|0;return a|0}function nY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function oY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+888;fW(a,e);l=d;return}function pY(a){a=a|0;return a|0}function qY(a){a=a|0;return a|0}function rY(){return 3132}function sY(){return 3144}function tY(a,b,c){a=a|0;b=b|0;c=+c;if(b>>>0<21){g[a+780+(b<<2)>>2]=c;a=1}else a=0;return a|0}function uY(){return 3160}function vY(a,b){a=a|0;b=b|0;var c=0.0;if(b>>>0<21)c=+g[a+780+(b<<2)>>2];else c=0.0;return +c}function wY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<512){a[b+233+c>>0]=d&1;b=1}else b=0;return b|0}function xY(b,c){b=b|0;c=c|0;if(c>>>0<512)b=(a[b+233+c>>0]|0)!=0;else b=0;return b|0}function yY(){return 3172}function zY(b,c,d){b=b|0;c=c|0;d=d|0;if(c>>>0<5){a[b+212+c>>0]=d&1;b=1}else b=0;return b|0}function AY(){return 3188}function BY(b,c){b=b|0;c=c|0;if(c>>>0<5)b=(a[b+212+c>>0]|0)!=0;else b=0;return b|0}function CY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+204;fW(a,e);l=d;return}function DY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+152;fW(a,e);l=d;return}function EY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=c[b+136>>2];FY(a,e);l=d;return}function FY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;GY(e,b);b=HY()|0;c[a>>2]=oc(b|0,IY(e)|0)|0;l=d;return}function GY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;LY(e,KY(c[b>>2]|0)|0);hH(e);l=d;return}function HY(){return JY()|0}function IY(a){a=a|0;return a|0}function JY(){return 416}function KY(a){a=a|0;return a|0}function LY(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function MY(){return 3200}function NY(a,b,d){a=a|0;b=b|0;d=d|0;if(b>>>0<21){c[a+40+(b<<2)>>2]=d;a=1}else a=0;return a|0}function OY(){return 3216}function PY(a,b){a=a|0;b=b|0;if(b>>>0<21)a=c[a+40+(b<<2)>>2]|0;else a=-1;return a|0}function QY(){return 952}function RY(){return 3228}function SY(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;fW(a,e);l=d;return}function TY(a){a=a|0;return 264}function UY(){return 384}function VY(){return 248}function WY(){return 264}function XY(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;YY();d=ZY()|0;g=_Y()|0;n=$Y()|0;m=aZ()|0;k=bZ()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,29,h|0,d|0,f|0,g|0,38394,ET()|0,71);c[b>>2]=fZ(57)|0;g=$Y()|0;f=gZ(e)|0;d=hZ(e)|0;h=VG()|0;Tb(g|0,38406,f|0,d|0,h|0,36,iZ(b)|0,0);c[b>>2]=lZ(58)|0;h=$Y()|0;d=mZ(e)|0;f=nZ(e)|0;g=VG()|0;Tb(h|0,38425,d|0,f|0,g|0,37,oZ(b)|0,0);c[b>>2]=rZ(59)|0;g=$Y()|0;f=sZ(e)|0;e=tZ(e)|0;d=lL()|0;Tb(g|0,38434,f|0,e|0,d|0,22,uZ(b)|0,0);c[b>>2]=24;d=$Y()|0;e=TW()|0;f=VG()|0;g=wZ(b)|0;h=TW()|0;i=lL()|0;Ub(d|0,38443,e|0,f|0,38,g|0,h|0,i|0,23,wZ(b)|0);c[b>>2]=28;i=$Y()|0;h=TW()|0;g=VG()|0;f=wZ(b)|0;e=TW()|0;d=lL()|0;Ub(i|0,38452,h|0,g|0,38,f|0,e|0,d|0,23,wZ(b)|0);l=a;return}function YY(){return}function ZY(){return 0}function _Y(){return 0}function $Y(){return ZZ()|0}function aZ(){return YZ()|0}function bZ(){return XZ()|0}function cZ(a){a=a|0;return WZ(a)|0}function dZ(a){a=a|0;if(a|0){hx(a);hba(a)}return}function eZ(a,b){a=a|0;b=b|0;KZ(a,b);return}function fZ(a){a=a|0;return a|0}function gZ(a){a=a|0;return 2}function hZ(a){a=a|0;return JZ()|0}function iZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function jZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=IZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function kZ(a,b){a=a|0;b=b|0;HZ(a,b);return}function lZ(a){a=a|0;return a|0}function mZ(a){a=a|0;return 2}function nZ(a){a=a|0;return GZ()|0}function oZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function pZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=FZ(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function qZ(a,b){a=a|0;b=b|0;BZ(a,b);return}function rZ(a){a=a|0;return a|0}function sZ(a){a=a|0;return 3}function tZ(a){a=a|0;return AZ()|0}function uZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function vZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=zZ(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function wZ(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function xZ(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function yZ(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function zZ(a){a=a|0;return a|0}function AZ(){return 3236}function BZ(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=c[d>>2]|0;if(a|0){ZG(a);hba(a)}if(NH(b)|0)a=0;else{a=gba(4)|0;CZ(a,b)}c[d>>2]=a;return}function CZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;mN(e,b);b=DZ()|0;c[a>>2]=oc(b|0,pN(e)|0)|0;l=d;return}function DZ(){return EZ()|0}function EZ(){return 40}function FZ(a){a=a|0;return a|0}function GZ(){return 3248}function HZ(a,b){a=a|0;b=b|0;b=c[b+4>>2]|0;if(!b)lK(a);else tH(a,b);return}function IZ(a){a=a|0;return a|0}function JZ(){return 3256}function KZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;j=d+28|0;h=d+24|0;g=d+20|0;k=d+16|0;e=d+12|0;f=d+8|0;i=d;c[j>>2]=0;c[h>>2]=-1;c[g>>2]=-1;c[k>>2]=-1;aA(b,j,h,g,k);LZ(a);xH(e,38478);b=O(c[h>>2]<<2,c[g>>2]|0)|0;MZ(i,b,c[j>>2]|0);NZ(f,i);OZ(a,e,f);ZG(f);ZG(e);xH(e,38485);iJ(f,h);OZ(a,e,f);ZG(f);ZG(e);xH(e,38491);iJ(f,g);OZ(a,e,f);ZG(f);ZG(e);l=d;return}function LZ(a){a=a|0;qH(a,kc()|0);return}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;VZ(a,b,c);return}function NZ(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;PZ(e,b);b=QZ()|0;c[a>>2]=oc(b|0,RZ(e)|0)|0;l=d;return}function OZ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;tH(f,b);nc(a|0,c[f>>2]|0,c[d>>2]|0);ZG(f);l=e;return}function PZ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;TZ(f,b);UZ(e,f);hH(e);l=d;return}function QZ(){return SZ()|0}function RZ(a){a=a|0;return a|0}function SZ(){return 456}function TZ(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function UZ(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function VZ(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function WZ(a){a=a|0;return 432}function XZ(){return 440}function YZ(){return 416}function ZZ(){return 432}function _Z(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;$Z();d=a_()|0;g=b_()|0;n=c_()|0;m=d_()|0;k=e_()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,30,h|0,d|0,f|0,g|0,38529,ET()|0,72);c[b>>2]=i_(60)|0;g=c_()|0;f=j_(e)|0;e=k_(e)|0;d=VG()|0;Tb(g|0,38536,f|0,e|0,d|0,39,l_(b)|0,0);l=a;return}function $Z(){return}function a_(){return 0}function b_(){return 0}function c_(){return u_()|0}function d_(){return t_()|0}function e_(){return s_()|0}function f_(a){a=a|0;return r_(a)|0}function g_(a){a=a|0;if(a|0){px(a);hba(a)}return}function h_(a,b){a=a|0;b=b|0;p_(a,b);return}function i_(a){a=a|0;return a|0}function j_(a){a=a|0;return 2}function k_(a){a=a|0;return o_()|0}function l_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m_(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=n_(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function n_(a){a=a|0;return a|0}function o_(){return 3264}function p_(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=q_(d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function q_(a){a=a|0;a=c[a+64>>2]|0;return ((a|0)==0?38549:a+64|0)|0}function r_(a){a=a|0;return 152}function s_(){return 464}function t_(){return 136}function u_(){return 152}function v_(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;w_();f=x_()|0;h=y_()|0;n=z_()|0;m=A_()|0;k=B_()|0;j=OU()|0;i=tQ()|0;g=PU()|0;d=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,31,g|0,f|0,d|0,h|0,38569,ET()|0,73);c[b>>2]=F_(61)|0;h=z_()|0;d=G_(e)|0;f=H_(e)|0;g=lL()|0;Tb(h|0,38580,d|0,f|0,g|0,24,I_(b)|0,0);c[b>>2]=0;g=z_()|0;f=zV()|0;d=VG()|0;h=K_(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,38597,f|0,d|0,40,h|0,i|0,j|0,25,K_(b)|0);c[b>>2]=8;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38603,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=12;g=z_()|0;f=TW()|0;d=VG()|0;h=N_(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,38617,f|0,d|0,41,h|0,i|0,j|0,26,N_(b)|0);c[b>>2]=16;j=z_()|0;i=TW()|0;h=VG()|0;d=N_(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,38631,i|0,h|0,41,d|0,f|0,g|0,26,N_(b)|0);c[b>>2]=R_(62)|0;g=z_()|0;f=S_(e)|0;e=T_(e)|0;d=lL()|0;Tb(g|0,38645,f|0,e|0,d|0,27,U_(b)|0,0);l=a;return}function w_(){return}function x_(){return 0}function y_(){return 0}function z_(){return o$()|0}function A_(){return n$()|0}function B_(){return m$()|0}function C_(a){a=a|0;return l$(a)|0}function D_(a){a=a|0;if(a|0)hba(a);return}function E_(a,b){a=a|0;b=b|0;$_(a,b);return}function F_(a){a=a|0;return a|0}function G_(a){a=a|0;return 3}function H_(a){a=a|0;return __()|0}function I_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function J_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=Z_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function K_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L_(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function M_(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function N_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function O_(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function P_(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function Q_(a,b){a=a|0;b=b|0;Y_(a,b);return}function R_(a){a=a|0;return a|0}function S_(a){a=a|0;return 3}function T_(a){a=a|0;return X_()|0}function U_(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V_(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=W_(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function W_(a){a=a|0;return a|0}function X_(){return 3272}function Y_(a,b){a=a|0;b=b|0;var c=0,d=0;c=l;l=l+16|0;d=c;OH(d,b);_w(a,d);l=c;return}function Z_(a){a=a|0;return a|0}function __(){return 3284}function $_(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;e=i+8|0;f=i;g=i+4|0;h=a+8|0;if((c[h>>2]|0)>0){d=a+4|0;a=0;do{c[e>>2]=c[(c[d>>2]|0)+(a<<2)>>2];a$(g,e);b$(f,b,g);ZG(f);ZG(g);a=a+1|0}while((a|0)<(c[h>>2]|0))}l=i;return}function a$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;f$(e,b);b=g$()|0;c[a>>2]=oc(b|0,h$(e)|0)|0;l=d;return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;c$(a,b,17,c);return}function c$(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;j=f+8|0;i=f;d$(i,e);h=c[b>>2]|0;g=xR(j)|0;b=yR(j)|0;e=e$(i)|0;qH(a,Wd[d&31](h,g,b,e)|0);l=f;return}function d$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;rN(e,YG(b)|0);hH(e);l=d;return}function e$(a){a=a|0;return a|0}function f$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;k$(e,j$(c[b>>2]|0)|0);hH(e);l=d;return}function g$(){return i$()|0}function h$(a){a=a|0;return a|0}function i$(){return 496}function j$(a){a=a|0;return a|0}function k$(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function l$(a){a=a|0;return 240}function m$(){return 480}function n$(){return 224}function o$(){return 240}function p$(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;q$();d=r$()|0;g=s$()|0;n=t$()|0;m=u$()|0;k=v$()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,32,h|0,d|0,f|0,g|0,38690,ET()|0,74);c[b>>2]=z$(63)|0;g=t$()|0;f=A$(e)|0;d=B$(e)|0;h=lL()|0;Tb(g|0,38701,f|0,d|0,h|0,28,C$(b)|0,0);h=F$(64)|0;d=t$()|0;f=G$()|0;g=VG()|0;Ub(d|0,38717,f|0,g|0,42,H$(h)|0,0,0,0,0);h=F$(65)|0;g=t$()|0;f=G$()|0;d=VG()|0;Ub(g|0,38727,f|0,d|0,42,H$(h)|0,0,0,0,0);c[b>>2]=L$(11)|0;h=t$()|0;d=M$(e)|0;f=N$(e)|0;g=dS()|0;Tb(h|0,34965,d|0,f|0,g|0,5,O$(b)|0,0);c[b>>2]=75;c[b+4>>2]=0;g=t$()|0;f=Q$(e)|0;d=R$(e)|0;h=EQ()|0;Tb(g|0,38737,f|0,d|0,h|0,66,S$(b)|0,0);c[b>>2]=76;c[b+4>>2]=0;h=t$()|0;d=Q$(e)|0;f=R$(e)|0;g=EQ()|0;Tb(h|0,34978,d|0,f|0,g|0,66,S$(b)|0,0);c[b>>2]=V$(1)|0;g=t$()|0;f=W$(e)|0;d=X$(e)|0;h=Y$()|0;Tb(g|0,38760,f|0,d|0,h|0,1,Z$(b)|0,0);c[b>>2]=a0(1)|0;h=t$()|0;d=b0(e)|0;f=c0(e)|0;g=d0()|0;Tb(h|0,38768,d|0,f|0,g|0,1,e0(b)|0,0);c[b>>2]=h0(2)|0;g=t$()|0;f=i0(e)|0;d=j0(e)|0;h=k0()|0;Tb(g|0,38776,f|0,d|0,h|0,1,l0(b)|0,0);c[b>>2]=o0(2)|0;h=t$()|0;d=p0(e)|0;f=q0(e)|0;g=r0()|0;Tb(h|0,38790,d|0,f|0,g|0,1,s0(b)|0,0);c[b>>2]=v0(1)|0;g=t$()|0;f=w0(e)|0;d=x0(e)|0;h=y0()|0;Tb(g|0,38814,f|0,d|0,h|0,1,z0(b)|0,0);c[b>>2]=C0(5)|0;h=t$()|0;d=D0(e)|0;f=E0(e)|0;g=uP()|0;Tb(h|0,38822,d|0,f|0,g|0,3,F0(b)|0,0);c[b>>2]=I0(2)|0;g=t$()|0;f=J0(e)|0;d=K0(e)|0;h=L0()|0;Tb(g|0,38836,f|0,d|0,h|0,2,M0(b)|0,0);c[b>>2]=P0(6)|0;h=t$()|0;d=Q0(e)|0;f=R0(e)|0;g=S0()|0;Tb(h|0,38848,d|0,f|0,g|0,6,T0(b)|0,0);c[b>>2]=W0(1)|0;g=t$()|0;f=X0(e)|0;d=Y0(e)|0;h=Z0()|0;Tb(g|0,38866,f|0,d|0,h|0,1,_0(b)|0,0);c[b>>2]=b1(2)|0;h=t$()|0;d=c1(e)|0;f=d1(e)|0;g=e1()|0;Tb(h|0,38876,d|0,f|0,g|0,1,f1(b)|0,0);c[b>>2]=i1(7)|0;g=t$()|0;f=j1(e)|0;d=k1(e)|0;h=S0()|0;Tb(g|0,38892,f|0,d|0,h|0,7,l1(b)|0,0);c[b>>2]=o1(1)|0;h=t$()|0;d=p1(e)|0;f=q1(e)|0;g=r1()|0;Tb(h|0,38900,d|0,f|0,g|0,1,s1(b)|0,0);c[b>>2]=v1(1)|0;g=t$()|0;f=w1(e)|0;e=x1(e)|0;d=y1()|0;Tb(g|0,38913,f|0,e|0,d|0,1,z1(b)|0,0);l=a;return}function q$(){return}function r$(){return 0}function s$(){return 0}function t$(){return U2()|0}function u$(){return T2()|0}function v$(){return S2()|0}function w$(a){a=a|0;return R2(a)|0}function x$(a){a=a|0;if(a|0){Ps(a);hba(a)}return}function y$(a,b){a=a|0;b=b|0;D2(a,b);return}function z$(a){a=a|0;return a|0}function A$(a){a=a|0;return 3}function B$(a){a=a|0;return C2()|0}function C$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function D$(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=B2(b)|0;oH(f,d);ne[a&127](b,f);ZG(f);l=e;return}function E$(a,b){a=a|0;b=b|0;y2(a,b);return}function F$(a){a=a|0;return a|0}function G$(){return x2()|0}function H$(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=w2(d)|0;l=b;return a|0}function I$(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function J$(a,b){a=a|0;b=b|0;k2(a,b);return}function K$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;j2(a,b,c,d);return}function L$(a){a=a|0;return a|0}function M$(a){a=a|0;return 5}function N$(a){a=a|0;return i2()|0}function O$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function P$(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=B1(b)|0;oH(h,d);oH(i,e);f=ZH(f)|0;ye[a&15](b,h,i,f);ZG(i);ZG(h);l=g;return}function Q$(a){a=a|0;return 2}function R$(a){a=a|0;return h2()|0}function S$(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function T$(a,b){a=a|0;b=b|0;var d=0,e=0;e=g2(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function U$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f2(a,b,c,d,e);return}function V$(a){a=a|0;return a|0}function W$(a){a=a|0;return 6}function X$(a){a=a|0;return e2()|0}function Y$(){return 39024}function Z$(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function _$(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);f=XG(f)|0;g=+nH(g);ze[a&1](b,i,j,f,g);ZG(j);ZG(i);l=h;return}function $$(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;d2(a,b,c,d,e,f,g);return}function a0(a){a=a|0;return a|0}function b0(a){a=a|0;return 8}function c0(a){a=a|0;return c2()|0}function d0(){return 39014}function e0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function f0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;i=+nH(i);Be[a&1](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function g0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;b2(a,b,c,d,e,f);return}function h0(a){a=a|0;return a|0}function i0(a){a=a|0;return 7}function j0(a){a=a|0;return a2()|0}function k0(){return 39005}function l0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0;i=l;l=l+16|0;j=i+4|0;k=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);f=XG(f)|0;g=+nH(g);h=mH(h)|0;Ae[a&3](b,j,k,f,g,h);ZG(k);ZG(j);l=i;return}function n0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$1(a,b,c,d,e,f,g);return}function o0(a){a=a|0;return a|0}function p0(a){a=a|0;return 8}function q0(a){a=a|0;return _1()|0}function r0(){return 38995}function s0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0;j=l;l=l+16|0;k=j+4|0;m=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);f=XG(f)|0;g=XG(g)|0;h=XG(h)|0;i=XG(i)|0;Je[a&3](b,k,m,f,g,h,i);ZG(m);ZG(k);l=j;return}function u0(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;Z1(a,b,c,d,e,f,g);return}function v0(a){a=a|0;return a|0}function w0(a){a=a|0;return 8}function x0(a){a=a|0;return Y1()|0}function y0(){return 38985}function z0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A0(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;var j=0,k=0,m=0,n=0,o=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;a=c[a>>2]|0;b=B1(b)|0;oH(k,d);oH(m,e);oH(n,f);oH(o,g);h=XG(h)|0;i=+nH(i);He[a&3](b,k,m,n,o,h,i);ZG(o);ZG(n);ZG(m);ZG(k);l=j;return}function B0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X1(a,b,c,d,e,f);return}function C0(a){a=a|0;return a|0}function D0(a){a=a|0;return 7}function E0(a){a=a|0;return W1()|0}function F0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function G0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);oH(n,g);h=XG(h)|0;Ge[a&7](b,j,k,m,n,h);ZG(n);ZG(m);ZG(k);ZG(j);l=i;return}function H0(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;V1(a,b,c,d,e,f);return}function I0(a){a=a|0;return a|0}function J0(a){a=a|0;return 7}function K0(a){a=a|0;return U1()|0}function L0(){return 38976}function M0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function N0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i+8|0;k=i+4|0;m=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);oH(k,e);oH(m,f);g=XG(g)|0;h=+nH(h);De[a&3](b,j,k,m,g,h);ZG(m);ZG(k);ZG(j);l=i;return}function O0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T1(a,b,c,d,e);return}function P0(a){a=a|0;return a|0}function Q0(a){a=a|0;return 6}function R0(a){a=a|0;return S1()|0}function S0(){return 38968}function T0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function U0(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+8|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);oH(j,e);oH(k,f);g=XG(g)|0;Ce[a&15](b,i,j,k,g);ZG(k);ZG(j);ZG(i);l=h;return}function V0(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;R1(a,b,c,d,e,f);return}function W0(a){a=a|0;return a|0}function X0(a){a=a|0;return 7}function Y0(a){a=a|0;return Q1()|0}function Z0(){return 38959}function _0(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function $0(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;var i=0,j=0;i=l;l=l+16|0;j=i;a=c[a>>2]|0;b=B1(b)|0;oH(j,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;h=+nH(h);re[a&1](b,j,e,f,g,h);ZG(j);l=i;return}function a1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;P1(a,b,c,d,e);return}function b1(a){a=a|0;return a|0}function c1(a){a=a|0;return 6}function d1(a){a=a|0;return O1()|0}function e1(){return 38951}function f1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function g1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=+nH(e);f=XG(f)|0;g=mH(g)|0;qe[a&3](b,i,e,f,g);ZG(i);l=h;return}function h1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;N1(a,b,c,d);return}function i1(a){a=a|0;return a|0}function j1(a){a=a|0;return 6}function k1(a){a=a|0;return M1()|0}function l1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function m1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+32|0;i=h+16|0;j=h+4|0;k=h;a=c[a>>2]|0;b=B1(b)|0;oH(i,d);e=XG(e)|0;JG(j,f);oH(k,g);Ce[a&15](b,i,e,j,k);ZG(k);kba(j);ZG(i);l=h;return}function n1(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;F1(a,b,c,d,e,f,h,i);return}function o1(a){a=a|0;return a|0}function p1(a){a=a|0;return 10}function q1(a){a=a|0;return E1()|0}function r1(){return 38939}function s1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function t1(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0;m=l;l=l+32|0;n=m+24|0;o=m+20|0;p=m+8|0;q=m+4|0;r=m;a=c[a>>2]|0;b=B1(b)|0;oH(n,d);e=+nH(e);oH(o,f);g=XG(g)|0;JG(p,h);oH(q,i);j=+nH(j);oH(r,k);se[a&1](b,n,e,o,g,p,q,j,r);ZG(r);ZG(q);kba(p);ZG(o);ZG(n);l=m;return}function u1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;D1(a,b,c,d,e,f,g,h);return}function v1(a){a=a|0;return a|0}function w1(a){a=a|0;return 9}function x1(a){a=a|0;return C1()|0}function y1(){return 38928}function z1(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function A1(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0;k=l;l=l+16|0;m=k+12|0;n=k+8|0;o=k+4|0;p=k;a=c[a>>2]|0;b=B1(b)|0;oH(m,d);oH(n,e);oH(o,f);oH(p,g);h=XG(h)|0;i=+nH(i);j=mH(j)|0;Ie[a&1](b,m,n,o,p,h,i,j);ZG(p);ZG(o);ZG(n);ZG(m);l=k;return}function B1(a){a=a|0;return a|0}function C1(){return 3296}function D1(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;var i=0,j=0,k=0,m=0,n=0;i=l;l=l+32|0;n=i+24|0;m=i+16|0;k=i+8|0;j=i;OH(n,b);OH(m,c);OH(k,d);OH(j,e);Pw(a,n,m,k,j,f,g,h);l=i;return}function E1(){return 3332}function F1(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;var k=0,m=0,n=0;n=l;l=l+48|0;k=n+16|0;m=n;a[k>>0]=a[n+32>>0]|0;d=G1(d,k)|0;Ye(k);if(!(NH(j)|0)){PL(m,j);c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}OH(m,f);if((a[h+11>>0]|0)<0)h=c[h>>2]|0;j=NH(j)|0;Qw(b,d,e,m,g,h,0,i,j?0:k);l=n;return}function G1(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0;d=l;l=l+16|0;b=d+4|0;e=d;a=c[a>>2]|0;f=+cc(a|0,c[(H1(d+8|0)|0)>>2]|0,b|0);FG(e,c[b>>2]|0);b=I1(f)|0;HG(e);l=d;return b|0}function H1(a){a=a|0;return L1()|0}function I1(a){a=+a;return K1(J1(a)|0)|0}function J1(a){a=+a;return ~~a>>>0|0}function K1(a){a=a|0;return a|0}function L1(){return 3372}function M1(){return 3376}function N1(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=l;l=l+16|0;g=h;OH(g,d);if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ww(b,g,e,f,0);l=h;return}function O1(){return 3400}function P1(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;OH(g,b);Ow(a,g,c,d,e);l=f;return}function Q1(){return 3424}function R1(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;var g=0,h=0;g=l;l=l+16|0;h=g;OH(h,b);Nw(a,h,c,d,e,f);l=g;return}function S1(){return 3452}function T1(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,i=0;f=l;l=l+32|0;i=f+16|0;h=f+8|0;g=f;OH(i,b);OH(h,c);OH(g,d);Lw(a,i,h,g,e,1.0);l=f;return}function U1(){return 3476}function V1(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g+8|0;h=g;OH(j,b);OH(i,c);OH(h,d);Lw(a,j,i,h,e,f);l=g;return}function W1(){return 3504}function X1(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;g=l;l=l+32|0;k=g+24|0;j=g+16|0;i=g+8|0;h=g;OH(k,b);OH(j,c);OH(i,d);OH(h,e);Kw(a,k,j,i,h,f);l=g;return}function Y1(){return 3532}function Z1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+32|0;m=h+24|0;k=h+16|0;j=h+8|0;i=h;OH(m,b);OH(k,c);OH(j,d);OH(i,e);Jw(a,m,k,j,i,f,g);l=h;return}function _1(){return 3564}function $1(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Iw(a,j,i,d,e,f,g);l=h;return}function a2(){return 3596}function b2(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;i=g+8|0;h=g;OH(i,b);OH(h,c);Hw(a,i,h,d,e,f);l=g;return}function c2(){return 3624}function d2(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;var h=0,i=0,j=0;h=l;l=l+16|0;j=h+8|0;i=h;OH(j,b);OH(i,c);Gw(a,j,i,d,e,f,g);l=h;return}function e2(){return 3656}function f2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0;f=l;l=l+16|0;h=f+8|0;g=f;OH(h,b);OH(g,c);Fw(a,h,g,d,e);l=f;return}function g2(a){a=a|0;return a|0}function h2(){return 3680}function i2(){return 3688}function j2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;j=f+8|0;i=f;OH(j,b);OH(i,d);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];Yv(a,h,g,e);l=f;return}function k2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+24|0;e=(l2(b)|0)*20|0;n2(d,e,m2(b)|0);o2(a,d);l=c;return}function l2(a){a=a|0;return c[a>>2]|0}function m2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function n2(a,b,c){a=a|0;b=b|0;c=c|0;v2(a,b,c);return}function o2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;p2(e,b);b=q2()|0;c[a>>2]=oc(b|0,r2(e)|0)|0;l=d;return}function p2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d+8|0;e=d;c[e>>2]=a;t2(f,b);u2(e,f);hH(e);l=d;return}function q2(){return s2()|0}function r2(a){a=a|0;return a|0}function s2(){return 512}function t2(a,b){a=a|0;b=b|0;var d=0,e=0;e=b;d=c[e+4>>2]|0;b=a;c[b>>2]=c[e>>2];c[b+4>>2]=d;return}function u2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=c[b>>2];c[(c[a>>2]|0)+4>>2]=c[b+4>>2];c[a>>2]=(c[a>>2]|0)+8;return}function v2(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;return}function w2(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function x2(){return 40}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l;l=l+16|0;d=c;b=b+12|0;e=(z2(b)|0)<<1;n2(d,e,A2(b)|0);o2(a,d);l=c;return}function z2(a){a=a|0;return c[a>>2]|0}function A2(a){a=a|0;if((c[a>>2]|0)>0)return c[a+8>>2]|0;else Bb(39063,39072,1127,39086);return 0}function B2(a){a=a|0;return a|0}function C2(){return 3708}function D2(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;d=i+16|0;e=i+12|0;f=i+4|0;g=i+8|0;h=i;c[d>>2]=0;j=E2(a)|0;c[e>>2]=j;if((j|0)!=(F2(a)|0))do{G2(g,e);cP(h,d);H2(f,b,g,h);ZG(f);ZG(h);ZG(g);j=c[e>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);j=j+32|0;c[e>>2]=j}while((j|0)!=(F2(a)|0));l=i;return}function E2(a){a=a|0;return c[a+8>>2]|0}function F2(a){a=a|0;return (c[a+8>>2]|0)+(c[a>>2]<<5)|0}function G2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;L2(e,b);b=M2()|0;c[a>>2]=oc(b|0,N2(e)|0)|0;l=d;return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;I2(a,b,17,c,d);return}function I2(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+32|0;j=g+16|0;i=g;J2(i,e,f);h=c[b>>2]|0;b=RS(j)|0;e=SS(j)|0;f=K2(i)|0;qH(a,Wd[d&31](h,b,e,f)|0);l=g;return}function J2(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=a;rN(f,YG(b)|0);rN(f,YG(d)|0);hH(f);l=e;return}function K2(a){a=a|0;return a|0}function L2(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Q2(e,P2(c[b>>2]|0)|0);hH(e);l=d;return}function M2(){return O2()|0}function N2(a){a=a|0;return a|0}function O2(){return 520}function P2(a){a=a|0;return a|0}function Q2(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a>>2]=(c[a>>2]|0)+8;return}function R2(a){a=a|0;return 104}function S2(){return 496}function T2(){return 88}function U2(){return 104}function V2(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;W2();h=X2()|0;j=Y2()|0;n=Z2()|0;m=_2()|0;k=$2()|0;g=OU()|0;d=tQ()|0;f=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,d|0,33,f|0,h|0,i|0,j|0,39116,ET()|0,77);c[b>>2]=0;j=Z2()|0;i=c3()|0;h=VG()|0;f=d3(b)|0;d=c3()|0;g=lL()|0;Ub(j|0,39126,i|0,h|0,43,f|0,d|0,g|0,29,d3(b)|0);c[b>>2]=h3(67)|0;g=Z2()|0;d=i3(e)|0;e=j3(e)|0;f=VG()|0;Tb(g|0,39136,d|0,e|0,f|0,44,k3(b)|0,0);b=n3(68)|0;f=Z2()|0;e=G$()|0;d=VG()|0;Ub(f|0,39148,e|0,d|0,45,o3(b)|0,0,0,0,0);l=a;return}function W2(){return}function X2(){return 0}function Y2(){return 0}function Z2(){return z3()|0}function _2(){return y3()|0}function $2(){return x3()|0}function a3(a){a=a|0;return w3(a)|0}function b3(a){a=a|0;if(a|0)hba(a);return}function c3(){return v3()|0}function d3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function e3(a,b){a=a|0;b=b|0;return RI(b+(c[a>>2]|0)|0)|0}function f3(a,b,d){a=a|0;b=b|0;d=d|0;d=XG(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function g3(a,b){a=a|0;b=b|0;u3(a,b);return}function h3(a){a=a|0;return a|0}function i3(a){a=a|0;return 2}function j3(a){a=a|0;return t3()|0}function k3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function l3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=s3(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function m3(a,b){a=a|0;b=b|0;r3(a,b);return}function n3(a){a=a|0;return a|0}function o3(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=a;a=q3(d)|0;l=b;return a|0}function p3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;ne[c[a>>2]&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function q3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r3(a,b){a=a|0;b=b|0;b=c[b+20>>2]|0;if(!b)lK(a);else tH(a,b);return}function s3(a){a=a|0;return a|0}function t3(){return 3720}function u3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;eR(a,e);l=d;return}function v3(){return 960}function w3(a){a=a|0;return 536}function x3(){return 520}function y3(){return 544}function z3(){return 536}function A3(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;B3();g=C3()|0;d=D3()|0;n=E3()|0;m=F3()|0;k=G3()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,34,h|0,g|0,f|0,d|0,39170,ET()|0,78);d=E3()|0;f=J3(b)|0;g=K3(b)|0;Sb(d|0,f|0,g|0,tQ()|0,35,18);g=E3()|0;f=N3(b)|0;d=O3(b)|0;Sb(g|0,f|0,d|0,VG()|0,46,36);d=E3()|0;f=R3(b)|0;g=S3(b)|0;Sb(d|0,f|0,g|0,cI()|0,3,47);c[b>>2]=0;g=E3()|0;f=gV()|0;d=pQ()|0;h=V3(b)|0;i=gV()|0;j=kQ()|0;Ub(g|0,39187,f|0,d|0,10,h|0,i|0,j|0,5,V3(b)|0);c[b>>2]=4;j=E3()|0;i=gV()|0;h=pQ()|0;d=V3(b)|0;f=gV()|0;g=kQ()|0;Ub(j|0,39197,i|0,h|0,10,d|0,f|0,g|0,5,V3(b)|0);c[b>>2]=8;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39209,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=12;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39220,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=16;g=E3()|0;f=TW()|0;d=VG()|0;h=Y3(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39227,f|0,d|0,48,h|0,i|0,j|0,30,Y3(b)|0);c[b>>2]=20;j=E3()|0;i=TW()|0;h=VG()|0;d=Y3(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39240,i|0,h|0,48,d|0,f|0,g|0,30,Y3(b)|0);c[b>>2]=37;c[b+4>>2]=0;g=E3()|0;f=$3(e)|0;d=a4(e)|0;h=VG()|0;Tb(g|0,39251,f|0,d|0,h|0,49,b4(b)|0,0);c[b>>2]=6;c[b+4>>2]=0;h=E3()|0;d=d4(e)|0;f=e4(e)|0;g=f4()|0;Tb(h|0,32101,d|0,f|0,g|0,1,g4(b)|0,0);c[b>>2]=79;c[b+4>>2]=0;g=E3()|0;f=i4(e)|0;e=j4(e)|0;d=EQ()|0;Tb(g|0,32107,f|0,e|0,d|0,69,k4(b)|0,0);l=a;return}function B3(){return}function C3(){return 0}function D3(){return 0}function E3(){return z4()|0}function F3(){return y4()|0}function G3(){return x4()|0}function H3(a){a=a|0;return w4(a)|0}function I3(a){a=a|0;if(a|0){zq(a);hba(a)}return}function J3(a){a=a|0;return 1}function K3(a){a=a|0;return v4()|0}function L3(a){a=a|0;return s4(Ad[a&31]()|0)|0}function M3(){var a=0;a=gba(24)|0;yq(a,-1,-1.0);return a|0}function N3(a){a=a|0;return 2}function O3(a){a=a|0;return u4()|0}function P3(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=q4(b)|0;b=s4(Bd[a&63](e)|0)|0;l=d;return b|0}function Q3(a){a=a|0;var b=0;b=gba(24)|0;yq(b,c[a>>2]|0,-1.0);return b|0}function R3(a){a=a|0;return 3}function S3(a){a=a|0;return t4()|0}function T3(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,h=0;e=l;l=l+16|0;h=e+4|0;f=e;c[h>>2]=q4(b)|0;g[f>>2]=+r4(d);b=s4(Fd[a&63](h,f)|0)|0;l=e;return b|0}function U3(a,b){a=a|0;b=b|0;var d=0;d=gba(24)|0;yq(d,c[a>>2]|0,+g[b>>2]);return d|0}function V3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function W3(a,b){a=a|0;b=b|0;return +(+DH(b+(c[a>>2]|0)|0))}function X3(a,b,d){a=a|0;b=b|0;d=+d;d=+nH(d);g[b+(c[a>>2]|0)>>2]=d;return}function Y3(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function Z3(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function _3(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function $3(a){a=a|0;return 2}function a4(a){a=a|0;return p4()|0}function b4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function c4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function d4(a){a=a|0;return 4}function e4(a){a=a|0;return o4()|0}function f4(){return 39295}function g4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;var f=0,g=0;g=m4(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;g=mH(d)|0;e=+nH(e);oe[b&15](a,g,e);return}function i4(a){a=a|0;return 2}function j4(a){a=a|0;return n4()|0}function k4(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function l4(a,b){a=a|0;b=b|0;var d=0,e=0;e=m4(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;ie[b&127](a);return}function m4(a){a=a|0;return a|0}function n4(){return 3728}function o4(){return 3736}function p4(){return 3752}function q4(a){a=a|0;return mH(a)|0}function r4(a){a=+a;return +(+nH(a))}function s4(a){a=a|0;return a|0}function t4(){return 3760}function u4(){return 3772}function v4(){return 3780}function w4(a){a=a|0;return 576}function x4(){return 584}function y4(){return 560}function z4(){return 576}function A4(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+4|0;B4();g=C4()|0;d=D4()|0;n=E4()|0;m=F4()|0;k=G4()|0;j=OU()|0;i=tQ()|0;h=PU()|0;f=PU()|0;Rb(n|0,m|0,k|0,j|0,i|0,38,h|0,g|0,f|0,d|0,39322,ET()|0,80);d=E4()|0;f=J4(b)|0;g=K4(b)|0;Sb(d|0,f|0,g|0,tQ()|0,39,19);c[b>>2]=O4(70)|0;g=E4()|0;f=P4(e)|0;d=Q4(e)|0;h=VG()|0;Tb(g|0,39344,f|0,d|0,h|0,50,R4(b)|0,0);c[b>>2]=O4(71)|0;h=E4()|0;d=P4(e)|0;f=Q4(e)|0;g=VG()|0;Tb(h|0,39351,d|0,f|0,g|0,50,R4(b)|0,0);c[b>>2]=O4(72)|0;g=E4()|0;f=P4(e)|0;e=Q4(e)|0;d=VG()|0;Tb(g|0,39366,f|0,e|0,d|0,50,R4(b)|0,0);l=a;return}function B4(){return}function C4(){return 0}function D4(){return 0}function E4(){return c5()|0}function F4(){return b5()|0}function G4(){return a5()|0}function H4(a){a=a|0;return $4(a)|0}function I4(a){a=a|0;if(a|0)hba(a);return}function J4(a){a=a|0;return 1}function K4(a){a=a|0;return _4()|0}function L4(a){a=a|0;return pS(Ad[a&31]()|0)|0}function M4(){var a=0;a=gba(28)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Ot(a);return a|0}function N4(a,b){a=a|0;b=b|0;Z4(a,b);return}function O4(a){a=a|0;return a|0}function P4(a){a=a|0;return 2}function Q4(a){a=a|0;return Y4()|0}function R4(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function S4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=X4(b)|0;ne[a&127](e,b);b=YG(e)|0;ZG(e);l=d;return b|0}function T4(a,b){a=a|0;b=b|0;W4(a,b);return}function U4(a,b){a=a|0;b=b|0;V4(a,b);return}function V4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+20;hY(a,e);l=d;return}function W4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+12;hY(a,e);l=d;return}function X4(a){a=a|0;return a|0}function Y4(){return 3784}function Z4(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b+4;hY(a,e);l=d;return}function _4(){return 3792}function $4(a){a=a|0;return 192}function a5(){return 600}function b5(){return 176}function c5(){return 192}function d5(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;a=l;l=l+16|0;b=a;e=a+8|0;e5();j=f5()|0;h=g5()|0;n=h5()|0;m=i5()|0;k=j5()|0;g=OU()|0;f=tQ()|0;d=PU()|0;i=PU()|0;Rb(n|0,m|0,k|0,g|0,f|0,40,d|0,j|0,i|0,h|0,39407,ET()|0,81);h=h5()|0;i=m5(b)|0;j=n5(b)|0;Sb(h|0,i|0,j|0,tQ()|0,41,20);c[b>>2]=0;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39433,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=4;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39443,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=12;j=h5()|0;i=zV()|0;h=VG()|0;d=t5(b)|0;f=zV()|0;g=lL()|0;Ub(j|0,39449,i|0,h|0,52,d|0,f|0,g|0,32,t5(b)|0);c[b>>2]=14;g=h5()|0;f=w5()|0;d=VG()|0;h=x5(b)|0;i=w5()|0;j=lL()|0;Ub(g|0,39458,f|0,d|0,53,h|0,i|0,j|0,33,x5(b)|0);c[b>>2]=16;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39468,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=B5(73)|0;g=h5()|0;f=C5(e)|0;d=D5(e)|0;h=VG()|0;Tb(g|0,39477,f|0,d|0,h|0,54,E5(b)|0,0);c[b>>2]=H5(74)|0;h=h5()|0;d=I5(e)|0;f=J5(e)|0;g=lL()|0;Tb(h|0,39484,d|0,f|0,g|0,34,K5(b)|0,0);c[b>>2]=24;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39491,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=28;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39502,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=32;g=h5()|0;f=zV()|0;d=VG()|0;h=t5(b)|0;i=zV()|0;j=lL()|0;Ub(g|0,39510,f|0,d|0,52,h|0,i|0,j|0,32,t5(b)|0);c[b>>2]=36;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39519,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=40;g=h5()|0;f=TW()|0;d=VG()|0;h=q5(b)|0;i=TW()|0;j=lL()|0;Ub(g|0,39529,f|0,d|0,51,h|0,i|0,j|0,31,q5(b)|0);c[b>>2]=44;j=h5()|0;i=TW()|0;h=VG()|0;d=q5(b)|0;f=TW()|0;g=lL()|0;Ub(j|0,39544,i|0,h|0,51,d|0,f|0,g|0,31,q5(b)|0);c[b>>2]=35;c[b+4>>2]=0;g=h5()|0;f=M5(e)|0;d=N5(e)|0;h=cK()|0;Tb(g|0,39557,f|0,d|0,h|0,12,O5(b)|0,0);c[b>>2]=R5(13)|0;h=h5()|0;d=S5(e)|0;f=T5(e)|0;g=dS()|0;Tb(h|0,39569,d|0,f|0,g|0,8,U5(b)|0,0);c[b>>2]=42;c[b+4>>2]=0;g=h5()|0;f=X5(e)|0;e=Y5(e)|0;d=VG()|0;Tb(g|0,39581,f|0,e|0,d|0,55,Z5(b)|0,0);l=a;return}function e5(){return}function f5(){return 0}function g5(){return 0}function h5(){return q6()|0}function i5(){return p6()|0}function j5(){return o6()|0}function k5(a){a=a|0;return n6(a)|0}function l5(a){a=a|0;if(a|0)hba(a);return}function m5(a){a=a|0;return 1}function n5(a){a=a|0;return m6()|0}function o5(a){a=a|0;return wN(Ad[a&31]()|0)|0}function p5(){var a=0,b=0,d=0;a=gba(48)|0;b=a;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return a|0}function q5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function r5(a,b){a=a|0;b=b|0;return jI(b+(c[a>>2]|0)|0)|0}function s5(a,b,d){a=a|0;b=b|0;d=d|0;d=mH(d)|0;c[b+(c[a>>2]|0)>>2]=d;return}function t5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function u5(b,d){b=b|0;d=d|0;return KH((a[d+(c[b>>2]|0)>>0]|0)!=0)|0}function v5(b,d,e){b=b|0;d=d|0;e=e|0;e=ZH(e)|0;a[d+(c[b>>2]|0)>>0]=e&1;return}function w5(){return l6()|0}function x5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function y5(a,b){a=a|0;b=b|0;return k6(b+(c[a>>2]|0)|0)|0}function z5(a,d,e){a=a|0;d=d|0;e=e|0;e=qY(e)|0;b[d+(c[a>>2]|0)>>1]=e;return}function A5(a,b){a=a|0;b=b|0;j6(a,b);return}function B5(a){a=a|0;return a|0}function C5(a){a=a|0;return 2}function D5(a){a=a|0;return i6()|0}function E5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function F5(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;a=c[a>>2]|0;b=b6(b)|0;ne[a&127](e,b);b=wJ(e)|0;kba(e);l=d;return b|0}function G5(a,b){a=a|0;b=b|0;h6(a,b);return}function H5(a){a=a|0;return a|0}function I5(a){a=a|0;return 3}function J5(a){a=a|0;return g6()|0}function K5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function L5(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;a=c[a>>2]|0;b=b6(b)|0;JG(f,d);ne[a&127](b,f);kba(f);l=e;return}function M5(a){a=a|0;return 4}function N5(a){a=a|0;return f6()|0}function O5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function P5(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=e6(b)|0;b=c[a>>2]|0;f=c[a+4>>2]|0;a=g+(f>>1)|0;if(f&1)b=c[(c[a>>2]|0)+b>>2]|0;f=mH(d)|0;g=mH(e)|0;te[b&63](a,f,g);return}function Q5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d6(a,b,c);return}function R5(a){a=a|0;return a|0}function S5(a){a=a|0;return 5}function T5(a){a=a|0;return c6()|0}function U5(a){a=a|0;var b=0;b=gba(4)|0;c[b>>2]=c[a>>2];return b|0}function V5(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g+4|0;i=g;a=c[a>>2]|0;b=b6(b)|0;d=mH(d)|0;JG(h,e);oH(i,f);ye[a&15](b,d,h,i);ZG(i);kba(h);l=g;return}function W5(a){a=a|0;return (c[a+40>>2]|0)!=(c[a+44>>2]|0)|0}function X5(a){a=a|0;return 2}function Y5(a){a=a|0;return a6()|0}function Z5(a){a=a|0;var b=0,d=0;b=gba(8)|0;d=c[a+4>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=d;return b|0}function _5(a,b){a=a|0;b=b|0;var d=0,e=0;e=$5(b)|0;b=c[a>>2]|0;d=c[a+4>>2]|0;a=e+(d>>1)|0;if(d&1)b=c[(c[a>>2]|0)+b>>2]|0;return KH(Bd[b&63](a)|0)|0}function $5(a){a=a|0;return a|0}function a6(){return 3796}function b6(a){a=a|0;return a|0}function c6(){return 3804}function d6(b,d,e){b=b|0;d=d|0;e=e|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;Gp(b,d,e,0);return}function e6(a){a=a|0;return a|0}function f6(){return 3824}function g6(){return 3840}function h6(b,d){b=b|0;d=d|0;if((a[d+11>>0]|0)<0)d=c[d>>2]|0;t9(c[b+20>>2]|0,d)|0;return}function i6(){return 3852}function j6(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;f=GA(e)|0;if(f>>>0>4294967279)iba(b);if(f>>>0<11){a[b+11>>0]=f;d=b}else{i=f+16&-16;d=gba(i)|0;c[b>>2]=d;c[b+8>>2]=i|-2147483648;c[b+4>>2]=f}HA(d,e,f)|0;a[g>>0]=0;IA(d+f|0,g);l=h;return}function k6(a){a=a|0;return b[a>>1]|0}function l6(){return 944}function m6(){return 3860}function n6(a){a=a|0;return 128}function o6(){return 616}function p6(){return 112}function q6(){return 128} +function mda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;oe[a&15](b|0,c|0,+d)}function nda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;pe[a&1](b|0,c|0,+d,e|0)}function oda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;qe[a&3](b|0,c|0,+d,e|0,f|0)}function pda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;re[a&1](b|0,c|0,+d,e|0,f|0,+g)}function qda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;se[a&1](b|0,c|0,+d,e|0,f|0,g|0,h|0,+i,j|0)}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;te[a&63](b|0,c|0,d|0)}function sda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;ue[a&1](b|0,c|0,d|0,+e)}function tda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;ve[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function uda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=+h;we[a&1](b|0,c|0,d|0,+e,f|0,g|0,+h)}function vda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;j=+j;k=k|0;xe[a&1](b|0,c|0,d|0,+e,f|0,g|0,h|0,i|0,+j,k|0)}function wda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ye[a&15](b|0,c|0,d|0,e|0)}function xda(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ze[a&1](b|0,c|0,d|0,e|0,+f)}function yda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ae[a&3](b|0,c|0,d|0,e|0,+f,g|0)}function zda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;Be[a&1](b|0,c|0,d|0,e|0,+f,g|0,+h)}function Ada(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ce[a&15](b|0,c|0,d|0,e|0,f|0)}function Bda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;De[a&3](b|0,c|0,d|0,e|0,f|0,+g)}function Cda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ee[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function Dda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=+i;Fe[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,+i)}function Eda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Ge[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Fda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;He[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function Gda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;Ie[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0)}function Hda(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Je[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Ida(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;Ke[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i)}function Jda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;Le[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,+i,j|0)}function Kda(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Me[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Lda(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ne[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Mda(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Oe[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Nda(){S(0);return 0.0}function Oda(a){a=a|0;S(1);return 0.0}function Pda(a,b){a=a|0;b=b|0;S(2);return 0.0}function Qda(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0.0}function Rda(){S(4);return 0}function Sda(a){a=a|0;S(5);return 0}function Tda(a,b){a=a|0;b=+b;S(6);return 0}function Uda(a,b,c){a=a|0;b=+b;c=+c;S(7);return 0}function Vda(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(8);return 0}function Wda(a,b){a=a|0;b=b|0;S(9);return 0}function Xda(a,b,c){a=a|0;b=b|0;c=+c;S(10);return 0}function Yda(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;S(11);return 0}function Zda(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=+g;S(12);return 0}function _da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=+f;S(13);return 0}function $da(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;S(14);return 0}function aea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(15);return 0}function bea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;S(16);return 0}function cea(a,b,c){a=a|0;b=b|0;c=c|0;S(17);return 0}function dea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(18);return 0}function eea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;S(19);return 0}function fea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=+h;S(20);return 0}function gea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;S(21);return 0}function hea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=g|0;h=h|0;i=+i;S(22);return 0}function iea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=+g;S(23);return 0}function jea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;g=g|0;S(24);return 0}function kea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;S(25);return 0}function lea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(26);return 0}function mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dc(a|0,b|0,c|0,d|0)|0}function nea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;S(27);return 0}function oea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=+j;S(28);return 0}function pea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;h=+h;S(29);return 0}function qea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(30);return 0}function rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(31);return 0}function sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(32);return 0}function tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(33);return 0}function uea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(34);return 0}function vea(){S(35)}function wea(a){a=+a;S(36)}function xea(a,b){a=+a;b=+b;S(37)}function yea(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=d|0;e=e|0;f=f|0;S(38)}function zea(a,b,c){a=+a;b=b|0;c=c|0;S(39)}function Aea(a){a=a|0;S(40)}function Bea(a,b){a=a|0;b=+b;S(41)}function Cea(a,b,c){a=a|0;b=+b;c=+c;S(42)}function Dea(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;S(43)}function Eea(a,b,c,d){a=a|0;b=+b;c=c|0;d=d|0;S(44)}function Fea(a,b){a=a|0;b=b|0;S(45)}function Gea(a,b,c){a=a|0;b=b|0;c=+c;S(46)}function Hea(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;S(47)}function Iea(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;S(48)}function Jea(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=+f;S(49)}function Kea(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(50)}function Lea(a,b,c){a=a|0;b=b|0;c=c|0;S(51)}function Mea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;S(52)}function Nea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;S(53)}function Oea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=+g;S(54)}function Pea(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;h=h|0;i=+i;j=j|0;S(55)}function Qea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(56)}function Rea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;S(57)}function Sea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;S(58)}function Tea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;S(59)}function Uea(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(60)}function Vea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;S(61)}function Wea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;S(62)}function Xea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=+h;S(63)}function Yea(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(64)}function Zea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;S(65)}function _ea(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;S(66)}function $ea(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;S(67)}function afa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;S(68)}function bfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;S(69)}function cfa(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(70)}function dfa(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;S(71)}function efa(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;S(72)} // EMSCRIPTEN_END_FUNCS -var xd=[vca,Im,Lm,rm,sm,bn,cn,dn,fn,Sm,Kl,Wm,xg,Mm,Nm,Om,Pm,co,Ch,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca,vca];var yd=[wca,Uq,Hm,GS];var zd=[xca,jQ,uO,KO,nU,WV,HW,OW,w2,r5,$5,xca,xca,xca,xca,xca];var Ad=[yca,NW];var Bd=[zca,zm,Am,Vq,Wq,hq,iq,Dq,Kj,Oj,Mj,Nj,pj,oj,Dh,Gj,kU,m2,m3,Y3,k5,U5,zca,zca,zca,zca,zca,zca,zca,zca,zca,zca];var Cd=[Aca,J7,D7,kf,CB,ZB,kE,rE,ih,Lj,qm,tk,Pf,qj,rj,vj,wj,zj,yj,sF,qR,yS,mQ,sG,_M,wN,gU,jU,NV,CX,HY,cZ,YZ,C1,h2,l2,q2,Bg,h3,l3,T3,X3,D4,f5,j5,P5,T5,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca,Aca];var Dd=[Bca,Aj];var Ed=[Cca,tj,Y5,Cca];var Fd=[Dca,o5];var Gd=[Eca,ji,Fs,yy,Ay,mB,WB,aC,hC,ND,XD,aE,hE,mE,qE,vq,NE,uj,xj,KS,UQ,ZP,uP,LJ,hJ,vI,_H,qH,FG,uU,GU,UV,YV,lW,yW,AW,JX,PX,YX,OY,lZ,oZ,i_,G1,N1,R1,p2,u2,z2,E2,s3,_3,b4,f4,m4,H4,y5,Z5,c6,Eca,Eca,Eca,Eca,Eca];var Hd=[Fca,LH,t2,Fca];var Id=[Gca,rD,QH,Gca];var Jd=[Hca,zC,CC,FC,GC,Hca,Hca,Hca];var Kd=[Ica,lD,oD,pD,qD,Ica,Ica,Ica];var Ld=[Jca,ZC];var Md=[Kca,VG];var Nd=[Lca,KC,NC,OC,PC,Lca,Lca,Lca];var Od=[Mca,K7,L7,O7,V8,caa,waa,yaa,iA,iC,lC,vC,iD,jD,kD,GD,HD,ID,QD,UD,lE,nE,Ak,pF,GQ,zP,EL,_K,PK,nK,cK,CJ,BI,WH,nL,jO,NU,OU,bW,cW,qW,rW,BW,x5,A5,Q7,A9,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca,Mca];var Pd=[Nca,nM];var Qd=[Oca,bO,YN,Oca];var Rd=[Pca,QC];var Sd=[Qca,HC];var Td=[Rca,AD,wM,Rca];var Ud=[Sca,RM];var Vd=[Tca,cJ];var Wd=[Uca,KN];var Xd=[Vca,lA,aD,dD,eD,JD,MD,VD,dE,vE,US,TO,OO,zL,vK,HI,EH,Wca,TU,hW,wW,p5,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca,Vca];var Yd=[Xca,BN];var Zd=[Yca,QN];var _d=[Zca,_L];var $d=[_ca,YI];var ae=[$ca,wC,fD,uD,xD,yD,zD,WD,PS,LM,LL,VK,iK,$ca,$ca,$ca];var be=[ada,TC,DD,gO,EM,hM,ada,ada];var ce=[bda,eC,WC,tN,UL,bda,bda,bda];var de=[cda,iP,XM,cda];var ee=[dda,X9,Gh,Zz,Mi,pi,rz,Ni,yk,Gm,PA,bB,mg,dm,$l,bm,qq,Sq,Oq,Co,Do,wn,Tq,kl,jo,Vp,kr,bo,bq,ak,_j,jq,kq,oq,lk,ik,Al,Nn,xq,Fq,Li,mn,Pj,Ek,qaa,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda,dda];var fe=[eda,Um,hn,jn,ln,kg,cm,Up,Wp,Ym,Zm,eda,eda,eda,eda,eda];var ge=[fda,kn,ch,fda];var he=[gda,hF,kF,gda];var ie=[hda,sC];var je=[ida,_9,$9,aaa,baa,laa,vaa,xaa,Aaa,E7,Tz,Wz,Xz,$z,cA,dA,eA,hA,vA,JA,XA,ZA,_A,aB,Gk,Fk,kB,_l,am,qB,Xm,an,BB,FB,GB,HB,MB,NB,OB,PB,UB,VB,uq,TD,$D,gE,Hn,Jn,tE,EE,HE,IE,nn,QE,RE,Fj,Hj,Ij,Jj,DF,EF,HF,IF,JF,KF,LF,MF,pT,_R,hU,OV,DX,IY,dZ,ZZ,iv,jv,D1,i2,Ag,i3,U3,g5,Q5,k6,raa,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida,ida];var ke=[jda,ar,Zq,vS,ef,jda,jda,jda];var le=[kda,xR];var me=[lda,qI];var ne=[mda,$E,pO,mda];var oe=[nda,lf,mf,li,oA,rA,tA,uA,wA,xA,DA,Fm,LA,MA,NA,cB,gB,hB,lB,rB,tB,uB,IB,LB,QB,TB,eo,YD,sE,KE,LE,ME,SE,vF,wF,AF,iT,ZS,fR,CQ,wQ,SJ,pU,vU,wU,xU,yU,zU,AU,BU,CU,DU,PV,iW,jW,kW,nf,GW,EX,KX,QX,JY,eZ,qZ,_Z,e_,j_,t_,I1,O1,N2,n3,t3,u3,h4,n4,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda,nda];var pe=[oda,eQ,oU,XU,XV,x2,wg,s5,a6,oda,oda,oda,oda,oda,oda,oda];var qe=[pda,xF];var re=[qda,NI,C$,qda];var se=[rda,v$];var te=[sda,P$];var ue=[tda,ki,AA,QA,TA,UA,vB,yE,BE,dF,kS,RR,jR,RP,HP,fL,HU,IU,zW,FW,VX,ZX,jZ,mZ,pZ,vZ,d_,H1,A2,$3,c4,g4,s4,kp,t5,b6,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda,tda];var ve=[uda,J2];var we=[vda,VE];var xe=[wda,I$];var ye=[xda,B$];var ze=[yda,V$];var Ae=[zda,faa,oaa,Daa,GA,pS,IR,CR,pQ,ZJ,k_,w4,x4,zda,zda,zda];var Be=[Ada,u_];var Ce=[Bda,YE,I_,Bda];var De=[Cda,B_];var Ee=[Dda,eaa,naa,Caa,XR,p_,o$,J$,C4,Dda,Dda,Dda,Dda,Dda,Dda,Dda];var Fe=[Eda,A_,h$,Eda];var Ge=[Fda,O_];var He=[Gda,H_];var Ie=[Hda,daa,maa,Baa,bC,b$,u$,O$];var Je=[Ida,W_,n$,Ida];var Ke=[Jda,W$];var Le=[Kda,oP,P_,g$];var Me=[Lda,a$];var Ne=[Mda,a0];var Oe=[Nda,V_];var Pe=[Oda,oC,rC,Oda];var Qe=[Pda,HO];return{__GLOBAL__sub_I_bind_cpp:o6,__GLOBAL__sub_I_bind_imgui_cpp:tz,__GLOBAL__sub_I_imgui_cpp:Cu,___cxa_can_catch:Laa,___cxa_is_pointer_type:Maa,___getTypeName:C7,___muldi3:Paa,___udivdi3:Uaa,___uremdi3:Vaa,_bitshift64Lshr:Waa,_bitshift64Shl:Xaa,_free:E7,_i64Add:Qaa,_i64Subtract:Raa,_llvm_bswap_i32:Yaa,_malloc:D7,_memcpy:Zaa,_memmove:_aa,_memset:$aa,_sbrk:aba,dynCall_d:bba,dynCall_di:cba,dynCall_dii:dba,dynCall_diii:eba,dynCall_i:fba,dynCall_ii:gba,dynCall_iid:hba,dynCall_iidd:iba,dynCall_iidddd:jba,dynCall_iii:kba,dynCall_iiid:lba,dynCall_iiidd:mba,dynCall_iiidddid:nba,dynCall_iiiddid:oba,dynCall_iiiddii:pba,dynCall_iiidi:qba,dynCall_iiidiii:rba,dynCall_iiii:sba,dynCall_iiiidd:tba,dynCall_iiiidddid:uba,dynCall_iiiidddii:vba,dynCall_iiiidddiid:wba,dynCall_iiiiddid:xba,dynCall_iiiiddii:yba,dynCall_iiiidi:zba,dynCall_iiiidiii:Aba,dynCall_iiiii:Bba,dynCall_iiiiidddii:Cba,dynCall_iiiiidddiid:Dba,dynCall_iiiiiddid:Eba,dynCall_iiiiidi:Fba,dynCall_iiiiii:Gba,dynCall_iiiiiii:Hba,dynCall_iiiiiiii:Iba,dynCall_iiiiiiiii:Jba,dynCall_v:Kba,dynCall_vd:Lba,dynCall_vdd:Mba,dynCall_vdddiii:Nba,dynCall_vdii:Oba,dynCall_vi:Pba,dynCall_vid:Qba,dynCall_vidd:Rba,dynCall_vidddiii:Sba,dynCall_vidii:Tba,dynCall_vii:Uba,dynCall_viid:Vba,dynCall_viidi:Wba,dynCall_viidii:Xba,dynCall_viidiid:Yba,dynCall_viidiiiidi:Zba,dynCall_viii:_ba,dynCall_viiid:$ba,dynCall_viiidi:aca,dynCall_viiidii:bca,dynCall_viiidiid:cca,dynCall_viiidiiiidi:dca,dynCall_viiii:eca,dynCall_viiiid:fca,dynCall_viiiidi:gca,dynCall_viiiidid:hca,dynCall_viiiii:ica,dynCall_viiiiid:jca,dynCall_viiiiidi:kca,dynCall_viiiiidid:lca,dynCall_viiiiii:mca,dynCall_viiiiiid:nca,dynCall_viiiiiidi:oca,dynCall_viiiiiii:pca,dynCall_viiiiiiid:qca,dynCall_viiiiiiidi:rca,dynCall_viiiiiiii:sca,dynCall_viiiiiiiii:tca,dynCall_viiiiiiiiii:uca,establishStackSpace:Ue,getTempRet0:Xe,runPostSets:Naa,setTempRet0:We,setThrew:Ve,stackAlloc:Re,stackRestore:Te,stackSave:Se}}) +var wd=[Nda,Zm,an,Hm,Im,tn,un,vn,Hl,hn,Zl,mn,rg,bn,cn,dn,en,yo,Fh,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda,Nda];var xd=[Oda,qr,Ym,PS];var yd=[Pda,qQ,BO,RO,iV,RW,BX,_X,$X,aY,W3,K6,s7,Pda,Pda,Pda];var zd=[Qda,HX];var Ad=[Rda,Pm,Qm,rr,sr,Cq,Dq,_q,$j,ih,ek,bk,ck,dk,Gh,Nj,Xj,fV,M3,M4,p5,D6,l7,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda,Rda];var Bd=[Sda,a9,df,GC,bD,oF,vF,hh,ak,Fm,Kk,Jf,Hj,Ij,Lj,Mj,Qj,Pj,oG,zR,nT,HS,uQ,fN,DN,QU,bV,eV,IW,cZ,f_,C_,w$,a3,H3,L3,Q3,vg,H4,L4,k5,o5,W5,y6,C6,g7,k7,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda,Sda];var Cd=[Tda,Rj];var Dd=[Uda,Jj,p7,Uda];var Ed=[Vda,H6];var Fd=[Wda,yt,oz,qz,qC,_C,eD,lD,RE,$E,eF,lF,qF,uF,Sq,MF,Kj,Oj,TS,bR,eQ,BP,_J,vJ,PI,sI,JH,WG,pV,BV,PW,VW,XW,kX,xX,zX,jZ,pZ,xZ,m_,L_,O_,I$,e3,l3,p3,P3,U3,Z3,c4,S4,r5,u5,y5,F5,_5,R6,q7,v7,Wda,Wda,Wda,Wda,Wda];var Gd=[Xda,dI,IX,T3];var Hd=[Yda,vE,iI,Yda];var Id=[Zda,DD,GD,JD,KD,Zda,Zda,Zda];var Jd=[_da,pE,sE,tE,uE,_da,_da,_da];var Kd=[$da,bE];var Ld=[aea,lH];var Md=[bea,OD,RD,SD,TD,bea,bea,bea];var Nd=[cea,b9,c9,f9,maa,vba,Pba,Rba,wi,mB,mD,pD,zD,mE,nE,oE,KE,LE,ME,UE,YE,pF,rF,Rk,lG,PQ,GP,LL,fL,WK,uK,iK,RJ,VI,oI,uL,qO,IV,JV,aX,bX,pX,qX,AX,ZX,Q6,T6,h9,Taa,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea,cea];var Od=[dea,OX];var Pd=[eea,uM];var Qd=[fea,iO,dO,fea];var Rd=[gea,UD];var Sd=[hea,LD];var Td=[iea,EE,DM,iea];var Ud=[jea,YM];var Vd=[kea,RN];var Wd=[lea,pB,eE,hE,iE,NE,QE,ZE,hF,zF,bT,_O,VO,GL,CK,$I,YH,mea,OV,gX,vX,I6,lea,lea,lea,lea,lea,lea,lea,lea,lea,lea];var Xd=[nea,IN];var Yd=[oea,XN];var Zd=[pea,fM];var _d=[qea,qJ];var $d=[rea,AD,jE,yE,BE,CE,DE,_E,YS,SM,SL,aL,pK,rea,rea,rea];var ae=[sea,XD,HE,nO,LM,oM,sea,sea];var be=[tea,iD,_D,AN,$L,tea,tea,tea];var ce=[uea,pP,cN,uea];var de=[vea,oba,Rh,XA,bj,jA,cj,Pk,Wm,TB,fC,gg,sm,om,qm,Nq,or,kr,Xo,Yo,Mn,pr,Zn,Eo,oq,Jr,xo,wq,pk,nk,Eq,Fq,Lq,Bk,yk,Rl,fo,Uq,ar,aj,Dn,fk,Vk,Jba,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea,vea];var ee=[wea,kn,Xm,yn,zn,Bn,eg,rm,nq,pq,on,pn,wea,wea,wea,wea];var fe=[xea,An,ah,xea];var ge=[yea,dG,gG,yea];var he=[zea,wD];var ie=[Aea,rba,sba,tba,uba,Eba,Oba,Qba,Tba,LA,OA,RA,SA,TA,UA,VA,ZA,_A,$A,aB,dB,eB,hB,kB,lB,zB,NB,$B,bC,cC,eC,Xk,Wk,oC,nm,pm,uC,nn,sn,FC,JC,KC,LC,QC,RC,SC,TC,YC,ZC,Rq,XE,dF,kF,_n,ao,xF,Cn,PF,QF,Wj,Yj,Zj,_j,zG,AG,BG,FT,hS,RU,cV,JW,dZ,g_,D_,x$,$v,aw,b3,I3,ug,I4,l5,z6,h7,D7,Kba,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea,Aea];var je=[Bea,yr,vr,ES,_e,Bea,Bea,Bea];var ke=[Cea,GR];var le=[Dea,KI];var me=[Eea,XF,wO,Eea];var ne=[Fea,ef,ff,sB,vB,xB,yB,AB,BB,HB,Vm,PB,QB,RB,gC,kC,lC,pC,vC,xC,yC,MC,PC,UC,XC,zo,aF,wF,JF,KF,LF,RF,rG,sG,wG,uU,rT,iT,oR,LQ,FQ,kV,qV,rV,sV,tV,uV,vV,wV,xV,yV,KW,hX,iX,jX,gf,TX,eZ,kZ,qZ,h_,E_,Q_,y$,E$,J$,T$,g3,m3,l4,N4,T4,U4,A5,G5,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea,Fea];var oe=[Gea,lQ,jV,SV,SW,X3,qg,L6,t7,Gea,Gea,Gea,Gea,Gea,Gea,Gea];var pe=[Hea,tG];var qe=[Iea,fJ,a1,Iea];var re=[Jea,V0];var se=[Kea,n1];var te=[Lea,yi,EB,UB,XB,YB,zC,CF,FF,$F,tS,_R,sR,YP,OP,mL,CV,DV,WW,yX,SX,UX,vZ,yZ,J_,M_,P_,V_,D$,f3,_3,s5,v5,z5,L5,Fp,M6,u7,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea,Lea];var ue=[Mea,h4];var ve=[Nea,g1];var we=[Oea,$0];var xe=[Pea,t1];var ye=[Qea,yba,Hba,Wba,xi,KB,yS,RR,LR,xQ,dK,K$,P5,Q5,Qea,Qea];var ze=[Rea,U$];var Ae=[Sea,UF,g0,Sea];var Be=[Tea,$$];var Ce=[Uea,xba,Gba,Vba,eS,P$,O0,h1,V5,Uea,Uea,Uea,Uea,Uea,Uea,Uea];var De=[Vea,_$,H0,Vea];var Ee=[Wea,m0];var Fe=[Xea,f0];var Ge=[Yea,wba,Fba,Uba,fD,B0,U0,m1];var He=[Zea,u0,N0,Zea];var Ie=[_ea,u1];var Je=[$ea,vP,n0,G0];var Ke=[afa,A0];var Le=[bfa,A1];var Me=[cfa,t0];var Ne=[dfa,sD,vD,dfa];var Oe=[efa,OO];return{__GLOBAL__sub_I_bind_cpp:H7,__GLOBAL__sub_I_bind_imgui_cpp:lA,___cxa_can_catch:cca,___cxa_is_pointer_type:dca,___getTypeName:V8,___muldi3:gca,___udivdi3:lca,___uremdi3:mca,_bitshift64Lshr:nca,_bitshift64Shl:oca,_free:X8,_i64Add:hca,_i64Subtract:ica,_llvm_bswap_i32:pca,_malloc:W8,_memcpy:qca,_memmove:rca,_memset:sca,_sbrk:tca,dynCall_d:uca,dynCall_di:vca,dynCall_dii:wca,dynCall_diii:xca,dynCall_i:yca,dynCall_ii:zca,dynCall_iid:Aca,dynCall_iidd:Bca,dynCall_iidddd:Cca,dynCall_iii:Dca,dynCall_iiid:Eca,dynCall_iiidd:Fca,dynCall_iiidddid:Gca,dynCall_iiiddid:Hca,dynCall_iiiddii:Ica,dynCall_iiidi:Jca,dynCall_iiidiii:Kca,dynCall_iiii:Lca,dynCall_iiiid:Mca,dynCall_iiiidd:Nca,dynCall_iiiidddid:Oca,dynCall_iiiidddii:Pca,dynCall_iiiidddiid:Qca,dynCall_iiiiddid:Rca,dynCall_iiiiddii:Sca,dynCall_iiiidiii:Tca,dynCall_iiiii:Uca,dynCall_iiiiidddii:Vca,dynCall_iiiiidddiid:Wca,dynCall_iiiiiddid:Xca,dynCall_iiiiidi:Yca,dynCall_iiiiii:Zca,dynCall_iiiiiii:_ca,dynCall_iiiiiiii:$ca,dynCall_iiiiiiiii:ada,dynCall_v:bda,dynCall_vd:cda,dynCall_vdd:dda,dynCall_vdddiii:eda,dynCall_vdii:fda,dynCall_vi:gda,dynCall_vid:hda,dynCall_vidd:ida,dynCall_vidddiii:jda,dynCall_vidii:kda,dynCall_vii:lda,dynCall_viid:mda,dynCall_viidi:nda,dynCall_viidii:oda,dynCall_viidiid:pda,dynCall_viidiiiidi:qda,dynCall_viii:rda,dynCall_viiid:sda,dynCall_viiidii:tda,dynCall_viiidiid:uda,dynCall_viiidiiiidi:vda,dynCall_viiii:wda,dynCall_viiiid:xda,dynCall_viiiidi:yda,dynCall_viiiidid:zda,dynCall_viiiii:Ada,dynCall_viiiiid:Bda,dynCall_viiiiidi:Cda,dynCall_viiiiidid:Dda,dynCall_viiiiii:Eda,dynCall_viiiiiid:Fda,dynCall_viiiiiidi:Gda,dynCall_viiiiiii:Hda,dynCall_viiiiiiid:Ida,dynCall_viiiiiiidi:Jda,dynCall_viiiiiiii:Kda,dynCall_viiiiiiiii:Lda,dynCall_viiiiiiiiii:Mda,establishStackSpace:Se,getTempRet0:Ve,runPostSets:eca,setTempRet0:Ue,setThrew:Te,stackAlloc:Pe,stackRestore:Re,stackSave:Qe}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var __GLOBAL__sub_I_imgui_cpp=Module["__GLOBAL__sub_I_imgui_cpp"]=asm["__GLOBAL__sub_I_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidi=Module["dynCall_iiiidi"]=asm["dynCall_iiiidi"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidi=Module["dynCall_viiidi"]=asm["dynCall_viiidi"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __GLOBAL__sub_I_bind_imgui_cpp=Module["__GLOBAL__sub_I_bind_imgui_cpp"]=asm["__GLOBAL__sub_I_bind_imgui_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_d=Module["dynCall_d"]=asm["dynCall_d"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iidd=Module["dynCall_iidd"]=asm["dynCall_iidd"];var dynCall_iidddd=Module["dynCall_iidddd"]=asm["dynCall_iidddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiid=Module["dynCall_iiid"]=asm["dynCall_iiid"];var dynCall_iiidd=Module["dynCall_iiidd"]=asm["dynCall_iiidd"];var dynCall_iiidddid=Module["dynCall_iiidddid"]=asm["dynCall_iiidddid"];var dynCall_iiiddid=Module["dynCall_iiiddid"]=asm["dynCall_iiiddid"];var dynCall_iiiddii=Module["dynCall_iiiddii"]=asm["dynCall_iiiddii"];var dynCall_iiidi=Module["dynCall_iiidi"]=asm["dynCall_iiidi"];var dynCall_iiidiii=Module["dynCall_iiidiii"]=asm["dynCall_iiidiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiid=Module["dynCall_iiiid"]=asm["dynCall_iiiid"];var dynCall_iiiidd=Module["dynCall_iiiidd"]=asm["dynCall_iiiidd"];var dynCall_iiiidddid=Module["dynCall_iiiidddid"]=asm["dynCall_iiiidddid"];var dynCall_iiiidddii=Module["dynCall_iiiidddii"]=asm["dynCall_iiiidddii"];var dynCall_iiiidddiid=Module["dynCall_iiiidddiid"]=asm["dynCall_iiiidddiid"];var dynCall_iiiiddid=Module["dynCall_iiiiddid"]=asm["dynCall_iiiiddid"];var dynCall_iiiiddii=Module["dynCall_iiiiddii"]=asm["dynCall_iiiiddii"];var dynCall_iiiidiii=Module["dynCall_iiiidiii"]=asm["dynCall_iiiidiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidddii=Module["dynCall_iiiiidddii"]=asm["dynCall_iiiiidddii"];var dynCall_iiiiidddiid=Module["dynCall_iiiiidddiid"]=asm["dynCall_iiiiidddiid"];var dynCall_iiiiiddid=Module["dynCall_iiiiiddid"]=asm["dynCall_iiiiiddid"];var dynCall_iiiiidi=Module["dynCall_iiiiidi"]=asm["dynCall_iiiiidi"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddiii=Module["dynCall_vdddiii"]=asm["dynCall_vdddiii"];var dynCall_vdii=Module["dynCall_vdii"]=asm["dynCall_vdii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_vidddiii=Module["dynCall_vidddiii"]=asm["dynCall_vidddiii"];var dynCall_vidii=Module["dynCall_vidii"]=asm["dynCall_vidii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viidi=Module["dynCall_viidi"]=asm["dynCall_viidi"];var dynCall_viidii=Module["dynCall_viidii"]=asm["dynCall_viidii"];var dynCall_viidiid=Module["dynCall_viidiid"]=asm["dynCall_viidiid"];var dynCall_viidiiiidi=Module["dynCall_viidiiiidi"]=asm["dynCall_viidiiiidi"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiid=Module["dynCall_viiid"]=asm["dynCall_viiid"];var dynCall_viiidii=Module["dynCall_viiidii"]=asm["dynCall_viiidii"];var dynCall_viiidiid=Module["dynCall_viiidiid"]=asm["dynCall_viiidiid"];var dynCall_viiidiiiidi=Module["dynCall_viiidiiiidi"]=asm["dynCall_viiidiiiidi"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiid=Module["dynCall_viiiid"]=asm["dynCall_viiiid"];var dynCall_viiiidi=Module["dynCall_viiiidi"]=asm["dynCall_viiiidi"];var dynCall_viiiidid=Module["dynCall_viiiidid"]=asm["dynCall_viiiidid"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_viiiiidi=Module["dynCall_viiiiidi"]=asm["dynCall_viiiiidi"];var dynCall_viiiiidid=Module["dynCall_viiiiidid"]=asm["dynCall_viiiiidid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viiiiiidi=Module["dynCall_viiiiiidi"]=asm["dynCall_viiiiiidi"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiid=Module["dynCall_viiiiiiid"]=asm["dynCall_viiiiiiid"];var dynCall_viiiiiiidi=Module["dynCall_viiiiiiidi"]=asm["dynCall_viiiiiiidi"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();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;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run() diff --git a/example/imgui_impl.js b/example/imgui_impl.js index e2479a9..9df48c1 100644 --- a/example/imgui_impl.js +++ b/example/imgui_impl.js @@ -37,6 +37,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (event.keyCode === 9) { event.preventDefault(); @@ -48,6 +49,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -109,6 +111,7 @@ scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -118,7 +121,8 @@ // io.SetClipboardTextFn = ImGui_Impl_SetClipboardText; // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[0 /* Tab */] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[0 /* Tab */] = 9; io.KeyMap[1 /* LeftArrow */] = 37; io.KeyMap[2 /* RightArrow */] = 39; io.KeyMap[3 /* UpArrow */] = 38; @@ -127,16 +131,18 @@ io.KeyMap[6 /* PageDown */] = 34; io.KeyMap[7 /* Home */] = 36; io.KeyMap[8 /* End */] = 35; - io.KeyMap[9 /* Delete */] = 46; - io.KeyMap[10 /* Backspace */] = 8; - io.KeyMap[11 /* Enter */] = 13; - io.KeyMap[12 /* Escape */] = 27; - io.KeyMap[13 /* A */] = 65; - io.KeyMap[14 /* C */] = 67; - io.KeyMap[15 /* V */] = 86; - io.KeyMap[16 /* X */] = 88; - io.KeyMap[17 /* Y */] = 89; - io.KeyMap[18 /* Z */] = 90; + io.KeyMap[9 /* Insert */] = 45; + io.KeyMap[10 /* Delete */] = 46; + io.KeyMap[11 /* Backspace */] = 8; + io.KeyMap[12 /* Space */] = 32; + io.KeyMap[13 /* Enter */] = 13; + io.KeyMap[14 /* Escape */] = 27; + io.KeyMap[15 /* A */] = 65; + io.KeyMap[16 /* C */] = 67; + io.KeyMap[17 /* V */] = 86; + io.KeyMap[18 /* X */] = 88; + io.KeyMap[19 /* Y */] = 89; + io.KeyMap[20 /* Z */] = 90; // Backup GL state const last_texture = exports.gl && exports.gl.getParameter(exports.gl.TEXTURE_BINDING_2D); const last_array_buffer = exports.gl && exports.gl.getParameter(exports.gl.ARRAY_BUFFER_BINDING); @@ -230,7 +236,6 @@ g_VertHandle = null; exports.gl && exports.gl.deleteShader(g_FragHandle); g_FragHandle = null; - ImGui.Shutdown(); } exports.Shutdown = Shutdown; function NewFrame(time) { @@ -246,6 +251,74 @@ let dt = time - prev_time; prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & 2 /* EnableGamepad */) { + // Update gamepad inputs + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + const buttons_count = gamepad.buttons.length; + const axes_count = gamepad.axes.length; + function MAP_BUTTON(NAV_NO, BUTTON_NO) { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO, AXIS_NO, V0, V1) { + let v = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO] : V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) + v = 1.0; + if (io.NavInputs[NAV_NO] < v) + io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(0 /* Activate */, 0); // Cross / A + MAP_BUTTON(1 /* Cancel */, 1); // Circle / B + MAP_BUTTON(3 /* Menu */, 2); // Square / X + MAP_BUTTON(2 /* Input */, 3); // Triangle / Y + MAP_BUTTON(4 /* DpadLeft */, 14); // D-Pad Left + MAP_BUTTON(5 /* DpadRight */, 15); // D-Pad Right + MAP_BUTTON(6 /* DpadUp */, 12); // D-Pad Up + MAP_BUTTON(7 /* DpadDown */, 13); // D-Pad Down + MAP_BUTTON(12 /* FocusPrev */, 4); // L1 / LB + MAP_BUTTON(13 /* FocusNext */, 5); // R1 / RB + MAP_ANALOG(14 /* TweakSlow */, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(15 /* TweakFast */, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(8 /* LStickLeft */, 0, -0.3, -0.9); + MAP_ANALOG(9 /* LStickRight */, 0, +0.3, +0.9); + MAP_ANALOG(10 /* LStickUp */, 1, -0.3, -0.9); + MAP_ANALOG(11 /* LStickDown */, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } ImGui.NewFrame(); } exports.NewFrame = NewFrame; @@ -337,4 +410,4 @@ exports.gl && exports.gl.disable(exports.gl.SCISSOR_TEST); } exports.RenderDrawLists = RenderDrawLists; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFPdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfaW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFTdkIsUUFBQSxFQUFFLEdBQWlDLElBQUksQ0FBQztBQUNuRCxJQUFJLGNBQWMsR0FBd0IsSUFBSSxDQUFDO0FBQy9DLElBQUksWUFBWSxHQUF1QixJQUFJLENBQUM7QUFDNUMsSUFBSSxZQUFZLEdBQXVCLElBQUksQ0FBQztBQUM1QyxJQUFJLG1CQUFtQixHQUFnQyxJQUFJLENBQUM7QUFDNUQsSUFBSSx1QkFBdUIsR0FBZ0MsSUFBSSxDQUFDO0FBQ2hFLElBQUksd0JBQXdCLEdBQVUsQ0FBQyxDQUFDLENBQUM7QUFDekMsSUFBSSxrQkFBa0IsR0FBVSxDQUFDLENBQUMsQ0FBQztBQUNuQyxJQUFJLHFCQUFxQixHQUFVLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLElBQUksV0FBVyxHQUF1QixJQUFJLENBQUM7QUFDM0MsSUFBSSxnQkFBZ0IsR0FBdUIsSUFBSSxDQUFDO0FBQ2hELElBQUksYUFBYSxHQUF3QixJQUFJLENBQUM7QUFFOUMsSUFBSSxTQUFTLEdBQVcsQ0FBQyxDQUFDO0FBRTFCLGNBQXFCLE1BQWdDO0lBQ2pELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsQixVQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUVsRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBaUIsRUFBUSxFQUFFO1lBQ3hELE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxFQUFFLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNuQixF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 \ No newline at end of file diff --git a/example/imgui_impl.ts b/example/imgui_impl.ts index 977b604..474521b 100644 --- a/example/imgui_impl.ts +++ b/example/imgui_impl.ts @@ -1,5 +1,7 @@ import * as ImGui from "../imgui"; import { ImGuiKey } from "../imgui"; +import { ImGuiNavFlags } from "../imgui"; +import { ImGuiNavInput } from "../imgui"; import { ImGuiIO } from "../imgui"; import { ImDrawCmd } from "../imgui"; import { ImDrawList } from "../imgui"; @@ -46,6 +48,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = true; if (/*io.WantCaptureKeyboard ||*/ event.keyCode === 9) { event.preventDefault(); @@ -58,6 +61,7 @@ io.KeyShift = event.shiftKey; io.KeyAlt = event.altKey; io.KeySuper = event.metaKey; + ImGui.IM_ASSERT(event.keyCode >= 0 && event.keyCode < ImGui.IM_ARRAYSIZE(io.KeysDown)); io.KeysDown[event.keyCode] = false; if (io.WantCaptureKeyboard) { event.preventDefault(); @@ -119,6 +123,7 @@ case event.DOM_DELTA_LINE: scale = 0.2; break; case event.DOM_DELTA_PAGE: scale = 1.0; break; } + io.MouseWheelH = event.deltaX * scale; io.MouseWheel = -event.deltaY * scale; // Mouse wheel: 1 unit scrolls about 5 lines text. if (io.WantCaptureMouse) { event.preventDefault(); @@ -130,7 +135,8 @@ // io.GetClipboardTextFn = ImGui_Impl_GetClipboardText; // io.ClipboardUserData = NULL; - io.KeyMap[ImGuiKey.Tab] = 9; // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + // Keyboard mapping. ImGui will use those indices to peek into the io.KeyDown[] array. + io.KeyMap[ImGuiKey.Tab] = 9; io.KeyMap[ImGuiKey.LeftArrow] = 37; io.KeyMap[ImGuiKey.RightArrow] = 39; io.KeyMap[ImGuiKey.UpArrow] = 38; @@ -139,8 +145,10 @@ io.KeyMap[ImGuiKey.PageDown] = 34; io.KeyMap[ImGuiKey.Home] = 36; io.KeyMap[ImGuiKey.End] = 35; + io.KeyMap[ImGuiKey.Insert] = 45; io.KeyMap[ImGuiKey.Delete] = 46; io.KeyMap[ImGuiKey.Backspace] = 8; + io.KeyMap[ImGuiKey.Space] = 32; io.KeyMap[ImGuiKey.Enter] = 13; io.KeyMap[ImGuiKey.Escape] = 27; io.KeyMap[ImGuiKey.A] = 65; @@ -252,8 +260,6 @@ gl && gl.deleteProgram(g_ShaderHandle); g_ShaderHandle = null; gl && gl.deleteShader(g_VertHandle); g_VertHandle = null; gl && gl.deleteShader(g_FragHandle); g_FragHandle = null; - - ImGui.Shutdown(); } export function NewFrame(time: number): void { @@ -272,6 +278,73 @@ prev_time = time; io.DeltaTime = dt / 1000; + if (io.WantMoveMouse) { + console.log("TODO: MousePos", io.MousePos.x, io.MousePos.y); + } + + // Gamepad navigation mapping [BETA] + for (let i = 0; i < io.NavInputs.length; ++i) { + io.NavInputs[i] = 0.0; + } + if (io.NavFlags & ImGuiNavFlags.EnableGamepad) + { + // Update gamepad inputs + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + if (!gamepad) { continue; } + const buttons_count: number = gamepad.buttons.length; + const axes_count: number = gamepad.axes.length; + function MAP_BUTTON(NAV_NO: number, BUTTON_NO: number): void { + if (buttons_count > BUTTON_NO && gamepad.buttons[BUTTON_NO].pressed) + io.NavInputs[NAV_NO] = 1.0; + } + function MAP_ANALOG(NAV_NO: number, AXIS_NO: number, V0: number, V1: number): void { + let v: number = (axes_count > AXIS_NO) ? gamepad.axes[AXIS_NO]: V0; + v = (v - V0) / (V1 - V0); + if (v > 1.0) v = 1.0; + if (io.NavInputs[NAV_NO] < v) io.NavInputs[NAV_NO] = v; + } + // TODO: map input based on vendor and product id + // id: Logitech Logitech Dual Action (Vendor: 046d Product: c216) + // MAP_BUTTON(ImGuiNavInput.Activate, 1); // Cross / A + // MAP_BUTTON(ImGuiNavInput.Cancel, 2); // Circle / B + // MAP_BUTTON(ImGuiNavInput.Menu, 0); // Square / X + // MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + // MAP_ANALOG(ImGuiNavInput.DpadLeft, 4, -0.3, -0.9); // D-Pad Left + // MAP_ANALOG(ImGuiNavInput.DpadRight, 4, +0.3, +0.9); // D-Pad Right + // MAP_ANALOG(ImGuiNavInput.DpadUp, 5, -0.3, -0.9); // D-Pad Up + // MAP_ANALOG(ImGuiNavInput.DpadDown, 5, +0.3, +0.9); // D-Pad Down + // MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + // MAP_BUTTON(ImGuiNavInput.TweakSlow, 6); // L1 / LB + // MAP_BUTTON(ImGuiNavInput.TweakFast, 7); // R1 / RB + // MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + // MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + // MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: Logitech Gamepad F310 (STANDARD GAMEPAD Vendor: 046d Product: c21d) + MAP_BUTTON(ImGuiNavInput.Activate, 0); // Cross / A + MAP_BUTTON(ImGuiNavInput.Cancel, 1); // Circle / B + MAP_BUTTON(ImGuiNavInput.Menu, 2); // Square / X + MAP_BUTTON(ImGuiNavInput.Input, 3); // Triangle / Y + MAP_BUTTON(ImGuiNavInput.DpadLeft, 14); // D-Pad Left + MAP_BUTTON(ImGuiNavInput.DpadRight, 15); // D-Pad Right + MAP_BUTTON(ImGuiNavInput.DpadUp, 12); // D-Pad Up + MAP_BUTTON(ImGuiNavInput.DpadDown, 13); // D-Pad Down + MAP_BUTTON(ImGuiNavInput.FocusPrev, 4); // L1 / LB + MAP_BUTTON(ImGuiNavInput.FocusNext, 5); // R1 / RB + MAP_ANALOG(ImGuiNavInput.TweakSlow, 6, +0.3, +0.9); // L1 / LB + MAP_ANALOG(ImGuiNavInput.TweakFast, 7, +0.3, +0.9); // R1 / RB + MAP_ANALOG(ImGuiNavInput.LStickLeft, 0, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickRight, 0, +0.3, +0.9); + MAP_ANALOG(ImGuiNavInput.LStickUp, 1, -0.3, -0.9); + MAP_ANALOG(ImGuiNavInput.LStickDown, 1, +0.3, +0.9); + // id: null USB,2-axis 8-button gamepad (STANDARD GAMEPAD Vendor: 0583 Product: 2060) + // id: 8Bitdo SN30 Pro 8Bitdo SN30 Pro (Vendor: 2dc8 Product: 6001) + } + } + ImGui.NewFrame(); } diff --git a/example/main.js b/example/main.js index 315a3c3..294705c 100644 --- a/example/main.js +++ b/example/main.js @@ -9,6 +9,8 @@ const imgui_memory_editor_1 = require("imgui-js/imgui_memory_editor"); function main() { // Setup ImGui binding + ImGui.CreateContext(); + const io = ImGui.GetIO(); if (typeof (window) !== "undefined") { const output = document.getElementById("output") || document.body; const canvas = document.createElement("canvas"); @@ -27,33 +29,40 @@ canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event /* GamepadEvent */) => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", event.gamepad.index, event.gamepad.id, event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event /* GamepadEvent */) => { + console.log("Gamepad disconnected at index %d: %s.", event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); let show_demo_window = true; let show_another_window = false; let clear_color = new imgui_js_2.ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f = 0.0; + /* static */ let counter = 0; const memory_editor = new imgui_memory_editor_1.MemoryEditor(); let source = [ "ImGui.Text(\"Hello, world!\");", @@ -69,7 +78,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -85,6 +94,38 @@ ImGui.End(); } let show_sandbox_window = false; + function ShowGamepadWindow(title, p_open = null) { + ImGui.Begin(title, p_open, 64 /* AlwaysAutoResize */); + const gamepads = typeof (navigator) !== "undefined" && typeof (navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { + continue; + } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); + ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } + else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + let show_gamepad_window = false; // Main loop let done = false; function _loop(time) { @@ -93,20 +134,22 @@ // - When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + if (ImGui.Button("Button")) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi = bindImGui.mallinfo(); @@ -120,18 +163,22 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, 64 /* AlwaysAutoResize */); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new imgui_js_1.ImVec2(650, 20), 4 /* FirstUseEver */); // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ imgui_demo_1.ShowDemoWindow((value = show_demo_window) => show_demo_window = value); @@ -151,6 +198,7 @@ function _done() { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof (window) !== "undefined") { window.requestAnimationFrame(_loop); @@ -161,4 +209,4 @@ } } exports.default = main; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBQ2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQWdCLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvRSxNQUFNLE1BQU0sR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRSxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDMUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztRQUN6QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDbEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3BDLE1B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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1haW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrQ0FBa0M7QUFDbEMsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCx1Q0FBa0M7QUFDbEMsdUNBQWtDO0FBR2xDLG9EQUFxRDtBQUVyRCxzRUFBNEQ7QUFFNUQ7SUFDSSxzQkFBc0I7SUFDdEIsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RCLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQyxFQUFFLENBQUMsQ0FBQyxPQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBZ0IsUUFBUSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFzQixRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ25DLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM1QixNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxLQUFLLEdB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 \ No newline at end of file diff --git a/example/main.ts b/example/main.ts index 8c2137b..691fa02 100644 --- a/example/main.ts +++ b/example/main.ts @@ -3,12 +3,16 @@ import * as bindImGui from "imgui-js/bind-imgui"; import { ImVec2 } from "imgui-js"; import { ImVec4 } from "imgui-js"; +import { ImGuiIO } from "imgui-js"; +import { ImGuiNavFlags } from "imgui-js"; import { ShowDemoWindow } from "imgui-js/imgui_demo"; import { MemoryEditor } from "imgui-js/imgui_memory_editor"; export default function main(): void { // Setup ImGui binding + ImGui.CreateContext(); + const io: ImGuiIO = ImGui.GetIO(); if (typeof(window) !== "undefined") { const output: HTMLElement = document.getElementById("output") || document.body; const canvas: HTMLCanvasElement = document.createElement("canvas"); @@ -23,32 +27,41 @@ canvas.style.height = "100%"; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; - window.addEventListener("resize", () => { + window.addEventListener("resize", (): void => { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; }); + window.addEventListener("gamepadconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.", + event.gamepad.index, event.gamepad.id, + event.gamepad.buttons.length, event.gamepad.axes.length); + }); + window.addEventListener("gamepaddisconnected", (event: any /* GamepadEvent */): void => { + console.log("Gamepad disconnected at index %d: %s.", + event.gamepad.index, event.gamepad.id); + }); ImGui_Impl.Init(canvas); } else { ImGui_Impl.Init(null); } + //io.NavFlags |= ImGuiNavFlags.EnableKeyboard; // Enable Keyboard Controls // Setup style - ImGui.StyleColorsClassic(); - //ImGui.StyleColorsDark(); + ImGui.StyleColorsDark(); + //ImGui.StyleColorsClassic(); // Load Fonts // - If no fonts are loaded, dear imgui will use the default font. You can also load multiple fonts and use ImGui::PushFont()/PopFont() to select them. // - AddFontFromFileTTF() will return the ImFont* so you can store it if you need to select the font among multiple. // - If the file cannot be loaded, the function will return NULL. Please handle those errors in your application (e.g. use an assertion, or display an error and quit). // - The fonts will be rasterized at a given size (w/ oversampling) and stored into a texture when calling ImFontAtlas::Build()/GetTexDataAsXXXX(), which ImGui_ImplXXXX_NewFrame below will call. - // - Read 'extra_fonts/README.txt' for more instructions and details. + // - Read 'misc/fonts/README.txt' for more instructions and details. // - Remember that in C/C++ if you want to include a backslash \ in a string literal you need to write a double backslash \\ ! - //const io: ImGuiIO = ImGui.GetIO(); //io.Fonts.AddFontDefault(); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Roboto-Medium.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/Cousine-Regular.ttf", 15.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/DroidSans.ttf", 16.0); - //io.Fonts.AddFontFromFileTTF("../imgui/extra_fonts/ProggyTiny.ttf", 10.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Roboto-Medium.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/Cousine-Regular.ttf", 15.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/DroidSans.ttf", 16.0); + //io.Fonts.AddFontFromFileTTF("../imgui/misc/fonts/ProggyTiny.ttf", 10.0); //const font: ImFont = io.Fonts.AddFontFromFileTTF("c:\\Windows\\Fonts\\ArialUni.ttf", 18.0, null, io.Fonts.GetGlyphRangesJapanese()); //IM_ASSERT(font !== null); @@ -57,6 +70,7 @@ let clear_color: ImVec4 = new ImVec4(0.45, 0.55, 0.60, 1.00); /* static */ let f: number = 0.0; + /* static */ let counter: number = 0; const memory_editor: MemoryEditor = new MemoryEditor(); @@ -76,7 +90,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted("Contents evaluated and appended to the window."); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -93,6 +107,35 @@ let show_sandbox_window: boolean = false; + function ShowGamepadWindow(title: string, p_open: ImGui.ImAccess | null = null): void { + ImGui.Begin(title, p_open, ImGui.WindowFlags.AlwaysAutoResize); + const gamepads: Gamepad[] = typeof(navigator) !== "undefined" && typeof(navigator.getGamepads) === "function" ? navigator.getGamepads() : []; + if (gamepads.length > 0) { + for (let i = 0; i < gamepads.length; ++i) { + const gamepad: Gamepad = gamepads[i]; + ImGui.Text(`gamepad ${i} ${gamepad && gamepad.id}`); + if (!gamepad) { continue; } + ImGui.Text(` `); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${button.toString(16)}`); + } + ImGui.Text(`buttons`); + for (let button = 0; button < gamepad.buttons.length; ++button) { + ImGui.SameLine(); ImGui.Text(`${gamepad.buttons[button].value}`); + } + ImGui.Text(`axes`); + for (let axis = 0; axis < gamepad.axes.length; ++axis) { + ImGui.Text(`${axis}: ${gamepad.axes[axis].toFixed(2)}`); + } + } + } else { + ImGui.Text("connect a gamepad"); + } + ImGui.End(); + } + + let show_gamepad_window: boolean = false; + // Main loop let done: boolean = false; function _loop(time: number): void { @@ -102,21 +145,27 @@ // Generally you may always pass all inputs to dear imgui, and hide them from your application based on those two flags. ImGui_Impl.NewFrame(time); - // 1. Show a simple window + // 1. Show a simple window. // Tip: if we don't call ImGui::Begin()/ImGui::End() the widgets automatically appears in a window called "Debug". { // static float f = 0.0f; - ImGui.Text("Hello, world!"); // Some text (you can use a format string too) - ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float as a slider from 0.0f to 1.0f - ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats as a color - if (ImGui.Button("Demo Window")) // Use buttons to toggle our bools. We could use Checkbox() as well. - show_demo_window = !show_demo_window; - if (ImGui.Button("Another Window")) - show_another_window = !show_another_window; + // static int counter = 0; + + ImGui.Text("Hello, world!"); // Display some text (you can use a format string too) + ImGui.SliderFloat("float", (value = f) => f = value, 0.0, 1.0); // Edit 1 float using a slider from 0.0f to 1.0f + ImGui.ColorEdit3("clear color", clear_color); // Edit 3 floats representing a color + + ImGui.Checkbox("Demo Window", (value = show_demo_window) => show_demo_window = value); // Edit bools storing our windows open/close state + ImGui.Checkbox("Another Window", (value = show_another_window) => show_another_window = value); + + if (ImGui.Button("Button")) // Buttons return true when clicked (NB: most widgets return true when edited/activated) + counter++; + ImGui.SameLine(); + ImGui.Text(`counter = ${counter}`); + ImGui.Text(`Application average ${(1000.0 / ImGui.GetIO().Framerate).toFixed(3)} ms/frame (${ImGui.GetIO().Framerate.toFixed(1)} FPS)`); - - if (ImGui.Button("Memory Editor")) - memory_editor.Open = !memory_editor.Open; + + ImGui.Checkbox("Memory Editor", (value = memory_editor.Open) => memory_editor.Open = value); if (memory_editor.Open) memory_editor.DrawWindow("Memory Editor", bindImGui.buffer); const mi: bindImGui.mallinfo = bindImGui.mallinfo(); @@ -130,25 +179,29 @@ ImGui.Text(`Total allocated space (uordblks): ${mi.uordblks}`); ImGui.Text(`Total free space (fordblks): ${mi.fordblks}`); // ImGui.Text(`Topmost releasable block (keepcost): ${mi.keepcost}`); - if (ImGui.Button("Sandbox Window")) - show_sandbox_window = !show_sandbox_window; + ImGui.Checkbox("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window= value); if (show_sandbox_window) ShowSandboxWindow("Sandbox Window", (value = show_sandbox_window) => show_sandbox_window = value); + ImGui.Checkbox("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window= value); + if (show_gamepad_window) + ShowGamepadWindow("Gamepad Window", (value = show_gamepad_window) => show_gamepad_window = value); } - // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name the window. + // 2. Show another simple window. In most cases you will use an explicit Begin/End pair to name your windows. if (show_another_window) { ImGui.Begin("Another Window", (value = show_another_window) => show_another_window = value, ImGui.WindowFlags.AlwaysAutoResize); ImGui.Text("Hello from another window!"); + if (ImGui.Button("Close Me")) + show_another_window = false; ImGui.End(); } - // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). + // 3. Show the ImGui demo window. Most of the sample code is in ImGui::ShowDemoWindow(). Read its code to learn more about Dear ImGui! if (show_demo_window) { ImGui.SetNextWindowPos(new ImVec2(650, 20), ImGui.Cond.FirstUseEver) // Normally user code doesn't need/want to call this because positions are saved in .ini file anyway. Here we just want to make the demo initial state a bit more friendly! /*ImGui.*/ShowDemoWindow((value = show_demo_window) => show_demo_window = value); } - + ImGui_Impl.EndFrame(); // Rendering @@ -168,6 +221,7 @@ function _done(): void { // Cleanup ImGui_Impl.Shutdown(); + ImGui.DestroyContext(); } if (typeof(window) !== "undefined") { diff --git a/imconfig.js b/imconfig.js index e090c3e..bad2b6b 100644 --- a/imconfig.js +++ b/imconfig.js @@ -1,8 +1,11 @@ "use strict"; //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); // #pragma once @@ -11,24 +14,25 @@ //---- Define attributes of all API symbols declarations, e.g. for DLL under Windows. //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR exports.IMGUI_USE_BGRA_PACKED_COLOR = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -38,14 +42,13 @@ ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNCQUFzQjtBQUN0QixxREFBcUQ7QUFDckQsaUlBQWlJO0FBQ2pJLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsK0pBQStKO0FBQy9KLDBDQUEwQztBQUUxQyxpREFBaUQ7QUFDakQsb0NBQW9DO0FBRXBDLHVIQUF1SDtBQUN2SCx5REFBeUQ7QUFDekQsbURBQW1EO0FBRW5ELDRIQUE0SDtBQUM1SCwwSUFBMEk7QUFDMUksb0NBQW9DO0FBRXBDLGdHQUFnRztBQUNoRywrQ0FBK0M7QUFFL0MsbUdBQW1HO0FBQ25HLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx3RUFBd0U7QUFDeEUsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSDs7Ozs7Ozs7RUFRRTtBQUVGLHlHQUF5RztBQUN6RyxnQ0FBZ0M7QUFFaEMsd0dBQXdHO0FBQ3hHLG9IQUFvSDtBQUNwSDs7Ozs7RUFLRSJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0VBQStFO0FBQy9FLHNDQUFzQztBQUN0QyxnSUFBZ0k7QUFDaEksK0VBQStFO0FBQy9FLDBJQUEwSTtBQUMxSSxpSEFBaUg7QUFDakgsd0xBQXdMO0FBQ3hMLCtFQUErRTs7QUFFL0UsZUFBZTtBQUVmLDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFFM0MscUZBQXFGO0FBQ3JGLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFFM0MsZ0tBQWdLO0FBQ2hLLDBDQUEwQztBQUUxQyw4RkFBOEY7QUFDOUYseUlBQXlJO0FBQ3pJLDZIQUE2SDtBQUU3SCw0SEFBNEg7QUFDNUgsNkhBQTZIO0FBQzdILG9DQUFvQztBQUVwQyxnR0FBZ0c7QUFDaEcsK0NBQStDO0FBRS9DLGtFQUFrRTtBQUNsRSxvQ0FBb0M7QUFFcEMsa0dBQWtHO0FBQ2xHLHFDQUFxQztBQUN4QixRQUFBLDJCQUEyQixHQUFZLEtBQUssQ0FBQztBQUUxRCx1R0FBdUc7QUFDdkcsMENBQTBDO0FBRTFDLG9IQUFvSDtBQUNwSCx3RUFBd0U7QUFDeEU7Ozs7Ozs7O0VBUUU7QUFFRiw4SUFBOEk7QUFDOUksZ0NBQWdDO0FBRWhDLHdHQUF3RztBQUN4Rzs7Ozs7RUFLRSJ9 \ No newline at end of file diff --git a/imconfig.ts b/imconfig.ts index b6579a7..609b506 100644 --- a/imconfig.ts +++ b/imconfig.ts @@ -1,7 +1,10 @@ //----------------------------------------------------------------------------- -// USER IMPLEMENTATION -// This file contains compile-time options for ImGui. -// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +// COMPILE-TIME OPTIONS FOR DEAR IMGUI +// Most options (memory allocation, clipboard callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO(). +//----------------------------------------------------------------------------- +// A) You may edit imconfig.h (and not overwrite it when updating imgui, or maintain a patch/branch with your modifications to imconfig.h) +// B) or add configuration directives in your own file and compile with #define IMGUI_USER_CONFIG "myfilename.h" +// Note that options such as IMGUI_API, IM_VEC2_CLASS_EXTRA or ImDrawIdx needs to be defined consistently everywhere you include imgui.h, not only for the imgui*.cpp compilation units. //----------------------------------------------------------------------------- // #pragma once @@ -13,31 +16,32 @@ //#define IMGUI_API __declspec( dllexport ) //#define IMGUI_API __declspec( dllimport ) -//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names +//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce likelihood of using already obsolete function/names //#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS -//---- Include imgui_user.h at the end of imgui.h -//#define IMGUI_INCLUDE_IMGUI_USER_H - -//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions) -//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS -//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS +//---- Don't implement default handlers for Windows (so as not to link with certain functions) +//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS // Don't use and link with OpenClipboard/GetClipboardData/CloseClipboard etc. +//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS // Don't use and link with ImmGetContext/ImmSetCompositionWindow. //---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty) -//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why. +//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp. //#define IMGUI_DISABLE_DEMO_WINDOWS //---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself. //#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS -//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends) +//---- Include imgui_user.h at the end of imgui.h as a convenience +//#define IMGUI_INCLUDE_IMGUI_USER_H + +//---- Pack colors to BGRA8 instead of RGBA8 (if you needed to convert from one to another anyway) //#define IMGUI_USE_BGRA_PACKED_COLOR export const IMGUI_USE_BGRA_PACKED_COLOR: boolean = false; -//---- Implement STB libraries in a namespace to avoid linkage conflicts +//---- Implement STB libraries in a namespace to avoid linkage conflicts (defaults to global namespace) //#define IMGUI_STB_NAMESPACE ImGuiStb //---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4. +// This will be inlined as part of ImVec2 and ImVec4 class declarations. /* #define IM_VEC2_CLASS_EXTRA \ ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \ @@ -48,14 +52,13 @@ operator MyVec4() const { return MyVec4(x,y,z,w); } */ -//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices +//---- Use 32-bit vertex indices (instead of default 16-bit) to allow meshes with more than 64K vertices. Render function needs to support it. //#define ImDrawIdx unsigned int //---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files. -//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers. /* namespace ImGui { - void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL); + void MyFunction(const char* name, const MyMatrix44& v); } */ diff --git a/imgui b/imgui index e916310..41ecebf 160000 --- a/imgui +++ b/imgui @@ -1 +1 @@ -Subproject commit e916310b2e1f9cacbb2b9ce192a3dfb359e4b509 +Subproject commit 41ecebff5a63b1fa71ad0d1ef6f1e6d3d39ef07d diff --git a/imgui.js b/imgui.js index 0fc91d6..686abff 100644 --- a/imgui.js +++ b/imgui.js @@ -129,7 +129,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -272,7 +272,7 @@ exports.ImGuiTextBuffer = ImGuiTextBuffer; // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -420,7 +420,7 @@ exports.ImGuiTextEditCallbackData = ImGuiTextEditCallbackData; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -class ImGuiSizeConstraintCallbackData { +class ImGuiSizeCallbackData { constructor(native) { this.native = native; } @@ -433,7 +433,7 @@ get CurrentSize() { return this.native.getCurrentSize(); } get DesiredSize() { return this.native.getDesiredSize(); } } -exports.ImGuiSizeConstraintCallbackData = ImGuiSizeConstraintCallbackData; +exports.ImGuiSizeCallbackData = ImGuiSizeCallbackData; class ImGuiListClipper { get StartPosY() { return this.native.StartPosY; } get ItemsHeight() { return this.native.ItemsHeight; } @@ -524,7 +524,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif // Draw channels are used by the Columns API to "split" the render list into different channels while building, so items of each column can be batched together. @@ -681,6 +681,8 @@ class ImFontGlyph { } exports.ImFontGlyph = ImFontGlyph; +var bind_imgui_9 = require("./bind-imgui"); +exports.ImFontAtlasFlags = bind_imgui_9.ImFontAtlasFlags; // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -707,7 +709,7 @@ // IMGUI_API void Clear(); // Clear all // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -815,36 +817,37 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle { constructor() { - this.Alpha = 1.0; // Global alpha applies to everything in ImGui - this.WindowPadding = new ImVec2(8, 8); // Padding within a window - this.WindowRounding = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - this.WindowBorderSize = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.WindowMinSize = new ImVec2(32, 32); // Minimum window size - this.WindowTitleAlign = new ImVec2(0.0, 0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. - this.ChildRounding = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - this.ChildBorderSize = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.PopupRounding = 0.0; // Radius of popup window corners rounding. - this.PopupBorderSize = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.FramePadding = new ImVec2(4, 3); // Padding within a framed rectangle (used by most widgets) - this.FrameRounding = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - this.FrameBorderSize = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - this.ItemSpacing = new ImVec2(8, 4); // Horizontal and vertical spacing between widgets/lines - this.ItemInnerSpacing = new ImVec2(4, 4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) - this.TouchExtraPadding = new ImVec2(0, 0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! - this.IndentSpacing = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - this.ColumnsMinSpacing = 6.0; // Minimum horizontal spacing between two columns - this.ScrollbarSize = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - this.ScrollbarRounding = 9.0; // Radius of grab corners for scrollbar - this.GrabMinSize = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - this.GrabRounding = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - this.ButtonTextAlign = new ImVec2(0.5, 0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. - this.DisplayWindowPadding = new ImVec2(22, 22); // Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. - this.DisplaySafeAreaPadding = new ImVec2(4, 4); // If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. - this.AntiAliasedLines = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - this.AntiAliasedFill = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - this.CurveTessellationTol = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + this.Alpha = 1.0; + this.WindowPadding = new ImVec2(8, 8); + this.WindowRounding = 7.0; + this.WindowBorderSize = 0.0; + this.WindowMinSize = new ImVec2(32, 32); + this.WindowTitleAlign = new ImVec2(0.0, 0.5); + this.ChildRounding = 0.0; + this.ChildBorderSize = 1.0; + this.PopupRounding = 0.0; + this.PopupBorderSize = 1.0; + this.FramePadding = new ImVec2(4, 3); + this.FrameRounding = 0.0; + this.FrameBorderSize = 0.0; + this.ItemSpacing = new ImVec2(8, 4); + this.ItemInnerSpacing = new ImVec2(4, 4); + this.TouchExtraPadding = new ImVec2(0, 0); + this.IndentSpacing = 21.0; + this.ColumnsMinSpacing = 6.0; + this.ScrollbarSize = 16.0; + this.ScrollbarRounding = 9.0; + this.GrabMinSize = 10.0; + this.GrabRounding = 0.0; + this.ButtonTextAlign = new ImVec2(0.5, 0.5); + this.DisplayWindowPadding = new ImVec2(22, 22); + this.DisplaySafeAreaPadding = new ImVec2(4, 4); + this.MouseCursorScale = 1; + this.AntiAliasedLines = true; + this.AntiAliasedFill = true; + this.CurveTessellationTol = 1.25; this.Colors = []; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i] = new ImVec4(); } const _this = new ImGuiStyle(this); @@ -883,7 +886,7 @@ this.Colors = new Proxy([], { get: (target, key) => { if (key === "length") { - return 43 /* COUNT */; + return 45 /* COUNT */; } return this.internal.getColorsAt(Number(key)); }, @@ -932,6 +935,8 @@ get ButtonTextAlign() { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding() { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding() { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale() { return this.internal.MouseCursorScale; } + set MouseCursorScale(value) { this.internal.MouseCursorScale = value; } get AntiAliasedLines() { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill() { return this.internal.AntiAliasedFill; } @@ -964,10 +969,11 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; - for (let i = 0; i < 43 /* COUNT */; ++i) { + for (let i = 0; i < 45 /* COUNT */; ++i) { this.Colors[i].Copy(other.Colors[i]); } return this; @@ -980,9 +986,6 @@ class ImGuiIO { constructor(native) { this.native = native; - // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. - // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. - // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -990,7 +993,7 @@ this.KeyMap = new Proxy([], { get: (target, key) => { if (key === "length") { - return 19 /* COUNT */; + return 21 /* COUNT */; } return this.native.getKeyMapAt(Number(key)); }, @@ -1022,11 +1025,33 @@ return this.native.setKeysDownAt(Number(key), value); } }); + // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + this.NavInputs = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target, key, value) => { + return this.native.setNavInputsAt(Number(key), value); + } + }); //------------------------------------------------------------------ // [Internal] ImGui will maintain those fields. Forward compatibility not guaranteed! //------------------------------------------------------------------ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + this.MouseClickedPos = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 5; + } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1053,6 +1078,16 @@ return this.native.getKeysDownDurationAt(Number(key)); } }); + // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + this.NavInputsDownDuration = new Proxy([], { + get: (target, key) => { + if (key === "length") { + return 21 /* COUNT */; + } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); } //------------------------------------------------------------------ // Settings (fill once) // Default value: @@ -1062,6 +1097,12 @@ // float DeltaTime; // = 1.0f/60.0f // Time elapsed since last frame, in seconds. get DeltaTime() { return this.native.DeltaTime; } set DeltaTime(value) { this.native.DeltaTime = value; } + // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. + // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. + // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags() { return this.native.NavFlags; } + set NavFlags(value) { this.native.NavFlags = value; } // float KeyRepeatDelay; // = 0.250f // When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). // float KeyRepeatRate; // = 0.050f // When holding a key/button, rate at which it repeats, in seconds. // void* UserData; // = NULL // Store your own data for retrieval by callbacks. @@ -1110,6 +1151,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. get MouseWheel() { return this.native.MouseWheel; } set MouseWheel(value) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + get MouseWheelH() { return this.native.MouseWheelH; } + set MouseWheelH(value) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor() { return this.native.MouseDrawCursor; } set MouseDrawCursor(value) { this.native.MouseDrawCursor = value; } @@ -1125,7 +1169,6 @@ // bool KeySuper; // Keyboard modifier pressed: Cmd/Super/Windows get KeySuper() { return this.native.KeySuper; } set KeySuper(value) { this.native.KeySuper = value; } - // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] AddInputCharacter(c) { this.native.AddInputCharacter(c); } @@ -1134,7 +1177,7 @@ //------------------------------------------------------------------ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse() { return this.native.WantCaptureMouse; } set WantCaptureMouse(value) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. @@ -1146,6 +1189,12 @@ // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse() { return this.native.WantMoveMouse; } set WantMoveMouse(value) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive() { return this.native.NavActive; } + set NavActive(value) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible() { return this.native.NavVisible; } + set NavVisible(value) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate() { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1156,6 +1205,25 @@ get MouseDelta() { return this.native.getMouseDelta(); } } exports.ImGuiIO = ImGuiIO; +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +function CreateContext(shared_font_atlas = null) { + return bind.CreateContext(); +} +exports.CreateContext = CreateContext; +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +function DestroyContext(ctx = null) { + return bind.DestroyContext(ctx); +} +exports.DestroyContext = DestroyContext; +// IMGUI_API ImGuiContext* GetCurrentContext(); +var bind_imgui_10 = require("./bind-imgui"); +exports.GetCurrentContext = bind_imgui_10.GetCurrentContext; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +var bind_imgui_11 = require("./bind-imgui"); +exports.SetCurrentContext = bind_imgui_11.SetCurrentContext; // Main // IMGUI_API ImGuiIO& GetIO(); function GetIO() { return new ImGuiIO(bind.GetIO()); } @@ -1187,9 +1255,6 @@ // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! function EndFrame() { bind.EndFrame(); } exports.EndFrame = EndFrame; -// IMGUI_API void Shutdown(); -function Shutdown() { bind.Shutdown(); } -exports.Shutdown = Shutdown; // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! function ShowDemoWindow(p_open = null) { bind.ShowDemoWindow(p_open); } @@ -1237,6 +1302,64 @@ // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). function ShowUserGuide() { bind.ShowUserGuide(); } exports.ShowUserGuide = ShowUserGuide; +// IMGUI_API const char* GetVersion(); +var bind_imgui_12 = require("./bind-imgui"); +exports.GetVersion = bind_imgui_12.GetVersion; +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +function StyleColorsClassic(dst = null) { + if (dst === null) { + bind.StyleColorsClassic(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsClassic = StyleColorsClassic; +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +function StyleColorsDark(dst = null) { + if (dst === null) { + bind.StyleColorsDark(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsDark = StyleColorsDark; +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +function StyleColorsLight(dst = null) { + if (dst === null) { + bind.StyleColorsLight(null); + } + else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } + else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} +exports.StyleColorsLight = StyleColorsLight; // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). function Begin(name, open = null, flags = 0) { @@ -1255,8 +1378,8 @@ } exports.Begin = Begin; // IMGUI_API void End(); // finish appending to current window, pop it off the window stack. -var bind_imgui_9 = require("./bind-imgui"); -exports.End = bind_imgui_9.End; +var bind_imgui_13 = require("./bind-imgui"); +exports.End = bind_imgui_13.End; // IMGUI_API bool BeginChild(const char* str_id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // begin a scrolling region. size==0.0f: use remaining window size, size<0.0f: use remaining window size minus abs(size). size>0.0f: fixed size. each axis can use a different mode, e.g. ImVec2(0,400). // IMGUI_API bool BeginChild(ImGuiID id, const ImVec2& size = ImVec2(0,0), bool border = false, ImGuiWindowFlags extra_flags = 0); // " function BeginChild(id, size = ImVec2.ZERO, border = false, extra_flags = 0) { @@ -1279,8 +1402,8 @@ } exports.GetContentRegionAvail = GetContentRegionAvail; // IMGUI_API float GetContentRegionAvailWidth(); // -var bind_imgui_10 = require("./bind-imgui"); -exports.GetContentRegionAvailWidth = bind_imgui_10.GetContentRegionAvailWidth; +var bind_imgui_14 = require("./bind-imgui"); +exports.GetContentRegionAvailWidth = bind_imgui_14.GetContentRegionAvailWidth; // IMGUI_API ImVec2 GetWindowContentRegionMin(); // content boundaries min (roughly (0,0)-Scroll), in window coordinates function GetWindowContentRegionMin(out = new ImVec2()) { return bind.GetWindowContentRegionMin(out); @@ -1292,8 +1415,8 @@ } exports.GetWindowContentRegionMax = GetWindowContentRegionMax; // IMGUI_API float GetWindowContentRegionWidth(); // -var bind_imgui_11 = require("./bind-imgui"); -exports.GetWindowContentRegionWidth = bind_imgui_11.GetWindowContentRegionWidth; +var bind_imgui_15 = require("./bind-imgui"); +exports.GetWindowContentRegionWidth = bind_imgui_15.GetWindowContentRegionWidth; // IMGUI_API ImDrawList* GetWindowDrawList(); // get rendering command-list if you want to append your own draw primitives function GetWindowDrawList() { return new ImDrawList(bind.GetWindowDrawList()); @@ -1310,20 +1433,20 @@ } exports.GetWindowSize = GetWindowSize; // IMGUI_API float GetWindowWidth(); -var bind_imgui_12 = require("./bind-imgui"); -exports.GetWindowWidth = bind_imgui_12.GetWindowWidth; -// IMGUI_API float GetWindowHeight(); -var bind_imgui_13 = require("./bind-imgui"); -exports.GetWindowHeight = bind_imgui_13.GetWindowHeight; -// IMGUI_API bool IsWindowCollapsed(); -var bind_imgui_14 = require("./bind-imgui"); -exports.IsWindowCollapsed = bind_imgui_14.IsWindowCollapsed; -// IMGUI_API bool IsWindowAppearing(); -var bind_imgui_15 = require("./bind-imgui"); -exports.IsWindowAppearing = bind_imgui_15.IsWindowAppearing; -// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows var bind_imgui_16 = require("./bind-imgui"); -exports.SetWindowFontScale = bind_imgui_16.SetWindowFontScale; +exports.GetWindowWidth = bind_imgui_16.GetWindowWidth; +// IMGUI_API float GetWindowHeight(); +var bind_imgui_17 = require("./bind-imgui"); +exports.GetWindowHeight = bind_imgui_17.GetWindowHeight; +// IMGUI_API bool IsWindowCollapsed(); +var bind_imgui_18 = require("./bind-imgui"); +exports.IsWindowCollapsed = bind_imgui_18.IsWindowCollapsed; +// IMGUI_API bool IsWindowAppearing(); +var bind_imgui_19 = require("./bind-imgui"); +exports.IsWindowAppearing = bind_imgui_19.IsWindowAppearing; +// IMGUI_API void SetWindowFontScale(float scale); // per-window font scale. Adjust IO.FontGlobalScale if you want to scale all windows +var bind_imgui_20 = require("./bind-imgui"); +exports.SetWindowFontScale = bind_imgui_20.SetWindowFontScale; // IMGUI_API void SetNextWindowPos(const ImVec2& pos, ImGuiCond cond = 0, const ImVec2& pivot = ImVec2(0,0)); // set next window position. call before Begin(). use pivot=(0.5f,0.5f) to center on given point, etc. function SetNextWindowPos(pos, cond = 0, pivot = ImVec2.ZERO) { bind.SetNextWindowPos(pos, cond, pivot); @@ -1338,7 +1461,7 @@ function SetNextWindowSizeConstraints(size_min, size_max, custom_callback = null, custom_callback_data = null) { if (custom_callback) { function _custom_callback(data) { - const _data = new ImGuiSizeConstraintCallbackData(data); + const _data = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1360,10 +1483,13 @@ } exports.SetNextWindowCollapsed = SetNextWindowCollapsed; // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() -var bind_imgui_17 = require("./bind-imgui"); -exports.SetNextWindowFocus = bind_imgui_17.SetNextWindowFocus; +var bind_imgui_21 = require("./bind-imgui"); +exports.SetNextWindowFocus = bind_imgui_21.SetNextWindowFocus; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +var bind_imgui_22 = require("./bind-imgui"); +exports.SetNextWindowBgAlpha = bind_imgui_22.SetNextWindowBgAlpha; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1408,23 +1534,23 @@ } exports.SetWindowFocus = SetWindowFocus; // IMGUI_API float GetScrollX(); // get scrolling amount [0..GetScrollMaxX()] -var bind_imgui_18 = require("./bind-imgui"); -exports.GetScrollX = bind_imgui_18.GetScrollX; -// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] -var bind_imgui_19 = require("./bind-imgui"); -exports.GetScrollY = bind_imgui_19.GetScrollY; -// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X -var bind_imgui_20 = require("./bind-imgui"); -exports.GetScrollMaxX = bind_imgui_20.GetScrollMaxX; -// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y -var bind_imgui_21 = require("./bind-imgui"); -exports.GetScrollMaxY = bind_imgui_21.GetScrollMaxY; -// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] -var bind_imgui_22 = require("./bind-imgui"); -exports.SetScrollX = bind_imgui_22.SetScrollX; -// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] var bind_imgui_23 = require("./bind-imgui"); -exports.SetScrollY = bind_imgui_23.SetScrollY; +exports.GetScrollX = bind_imgui_23.GetScrollX; +// IMGUI_API float GetScrollY(); // get scrolling amount [0..GetScrollMaxY()] +var bind_imgui_24 = require("./bind-imgui"); +exports.GetScrollY = bind_imgui_24.GetScrollY; +// IMGUI_API float GetScrollMaxX(); // get maximum scrolling amount ~~ ContentSize.X - WindowSize.X +var bind_imgui_25 = require("./bind-imgui"); +exports.GetScrollMaxX = bind_imgui_25.GetScrollMaxX; +// IMGUI_API float GetScrollMaxY(); // get maximum scrolling amount ~~ ContentSize.Y - WindowSize.Y +var bind_imgui_26 = require("./bind-imgui"); +exports.GetScrollMaxY = bind_imgui_26.GetScrollMaxY; +// IMGUI_API void SetScrollX(float scroll_x); // set scrolling amount [0..GetScrollMaxX()] +var bind_imgui_27 = require("./bind-imgui"); +exports.SetScrollX = bind_imgui_27.SetScrollX; +// IMGUI_API void SetScrollY(float scroll_y); // set scrolling amount [0..GetScrollMaxY()] +var bind_imgui_28 = require("./bind-imgui"); +exports.SetScrollY = bind_imgui_28.SetScrollY; // IMGUI_API void SetScrollHere(float center_y_ratio = 0.5f); // adjust scrolling amount to make current cursor position visible. center_y_ratio=0.0: top, 0.5: center, 1.0: bottom. When using to make a "default/current item" visible, consider using SetItemDefaultFocus() instead. function SetScrollHere(center_y_ratio = 0.5) { bind.SetScrollHere(center_y_ratio); @@ -1482,8 +1608,8 @@ } exports.GetFont = GetFont; // IMGUI_API float GetFontSize(); // get current font size (= height in pixels) of current font with current scale applied -var bind_imgui_24 = require("./bind-imgui"); -exports.GetFontSize = bind_imgui_24.GetFontSize; +var bind_imgui_29 = require("./bind-imgui"); +exports.GetFontSize = bind_imgui_29.GetFontSize; // IMGUI_API ImVec2 GetFontTexUvWhitePixel(); // get UV coordinate for a while pixel, useful to draw custom shapes via the ImDrawList API function GetFontTexUvWhitePixel(out = new ImVec2()) { return bind.GetFontTexUvWhitePixel(out); @@ -1498,49 +1624,49 @@ exports.GetColorU32 = GetColorU32; // Parameters stacks (current window) // IMGUI_API void PushItemWidth(float item_width); // width of items for the common item+label case, pixels. 0.0f = default to ~2/3 of windows width, >0.0f: width in pixels, <0.0f align xx pixels to the right of window (so -1.0f always align width to the right side) -var bind_imgui_25 = require("./bind-imgui"); -exports.PushItemWidth = bind_imgui_25.PushItemWidth; +var bind_imgui_30 = require("./bind-imgui"); +exports.PushItemWidth = bind_imgui_30.PushItemWidth; // IMGUI_API void PopItemWidth(); -var bind_imgui_26 = require("./bind-imgui"); -exports.PopItemWidth = bind_imgui_26.PopItemWidth; +var bind_imgui_31 = require("./bind-imgui"); +exports.PopItemWidth = bind_imgui_31.PopItemWidth; // IMGUI_API float CalcItemWidth(); // width of item given pushed settings and current cursor position -var bind_imgui_27 = require("./bind-imgui"); -exports.CalcItemWidth = bind_imgui_27.CalcItemWidth; +var bind_imgui_32 = require("./bind-imgui"); +exports.CalcItemWidth = bind_imgui_32.CalcItemWidth; // IMGUI_API void PushTextWrapPos(float wrap_pos_x = 0.0f); // word-wrapping for Text*() commands. < 0.0f: no wrapping; 0.0f: wrap to end of window (or column); > 0.0f: wrap at 'wrap_pos_x' position in window local space function PushTextWrapPos(wrap_pos_x = 0.0) { bind.PushTextWrapPos(wrap_pos_x); } exports.PushTextWrapPos = PushTextWrapPos; // IMGUI_API void PopTextWrapPos(); -var bind_imgui_28 = require("./bind-imgui"); -exports.PopTextWrapPos = bind_imgui_28.PopTextWrapPos; +var bind_imgui_33 = require("./bind-imgui"); +exports.PopTextWrapPos = bind_imgui_33.PopTextWrapPos; // IMGUI_API void PushAllowKeyboardFocus(bool allow_keyboard_focus); // allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets -var bind_imgui_29 = require("./bind-imgui"); -exports.PushAllowKeyboardFocus = bind_imgui_29.PushAllowKeyboardFocus; +var bind_imgui_34 = require("./bind-imgui"); +exports.PushAllowKeyboardFocus = bind_imgui_34.PushAllowKeyboardFocus; // IMGUI_API void PopAllowKeyboardFocus(); -var bind_imgui_30 = require("./bind-imgui"); -exports.PopAllowKeyboardFocus = bind_imgui_30.PopAllowKeyboardFocus; +var bind_imgui_35 = require("./bind-imgui"); +exports.PopAllowKeyboardFocus = bind_imgui_35.PopAllowKeyboardFocus; // IMGUI_API void PushButtonRepeat(bool repeat); // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame. -var bind_imgui_31 = require("./bind-imgui"); -exports.PushButtonRepeat = bind_imgui_31.PushButtonRepeat; +var bind_imgui_36 = require("./bind-imgui"); +exports.PushButtonRepeat = bind_imgui_36.PushButtonRepeat; // IMGUI_API void PopButtonRepeat(); -var bind_imgui_32 = require("./bind-imgui"); -exports.PopButtonRepeat = bind_imgui_32.PopButtonRepeat; +var bind_imgui_37 = require("./bind-imgui"); +exports.PopButtonRepeat = bind_imgui_37.PopButtonRepeat; // Cursor / Layout // IMGUI_API void Separator(); // separator, generally horizontal. inside a menu bar or in horizontal layout mode, this becomes a vertical separator. -var bind_imgui_33 = require("./bind-imgui"); -exports.Separator = bind_imgui_33.Separator; +var bind_imgui_38 = require("./bind-imgui"); +exports.Separator = bind_imgui_38.Separator; // IMGUI_API void SameLine(float pos_x = 0.0f, float spacing_w = -1.0f); // call between widgets or groups to layout them horizontally function SameLine(pos_x = 0.0, spacing_w = -1.0) { bind.SameLine(pos_x, spacing_w); } exports.SameLine = SameLine; // IMGUI_API void NewLine(); // undo a SameLine() -var bind_imgui_34 = require("./bind-imgui"); -exports.NewLine = bind_imgui_34.NewLine; +var bind_imgui_39 = require("./bind-imgui"); +exports.NewLine = bind_imgui_39.NewLine; // IMGUI_API void Spacing(); // add vertical spacing -var bind_imgui_35 = require("./bind-imgui"); -exports.Spacing = bind_imgui_35.Spacing; +var bind_imgui_40 = require("./bind-imgui"); +exports.Spacing = bind_imgui_40.Spacing; // IMGUI_API void Dummy(const ImVec2& size); // add a dummy item of given size function Dummy(size) { bind.Dummy(size); } exports.Dummy = Dummy; @@ -1551,29 +1677,29 @@ function Unindent(indent_w = 0.0) { bind.Unindent(indent_w); } exports.Unindent = Unindent; // IMGUI_API void BeginGroup(); // lock horizontal starting position + capture group bounding box into one "item" (so you can use IsItemHovered() or layout primitives such as SameLine() on whole group, etc.) -var bind_imgui_36 = require("./bind-imgui"); -exports.BeginGroup = bind_imgui_36.BeginGroup; +var bind_imgui_41 = require("./bind-imgui"); +exports.BeginGroup = bind_imgui_41.BeginGroup; // IMGUI_API void EndGroup(); -var bind_imgui_37 = require("./bind-imgui"); -exports.EndGroup = bind_imgui_37.EndGroup; +var bind_imgui_42 = require("./bind-imgui"); +exports.EndGroup = bind_imgui_42.EndGroup; // IMGUI_API ImVec2 GetCursorPos(); // cursor position is relative to window position function GetCursorPos(out = new ImVec2()) { return bind.GetCursorPos(out); } exports.GetCursorPos = GetCursorPos; // IMGUI_API float GetCursorPosX(); // " -var bind_imgui_38 = require("./bind-imgui"); -exports.GetCursorPosX = bind_imgui_38.GetCursorPosX; +var bind_imgui_43 = require("./bind-imgui"); +exports.GetCursorPosX = bind_imgui_43.GetCursorPosX; // IMGUI_API float GetCursorPosY(); // " -var bind_imgui_39 = require("./bind-imgui"); -exports.GetCursorPosY = bind_imgui_39.GetCursorPosY; +var bind_imgui_44 = require("./bind-imgui"); +exports.GetCursorPosY = bind_imgui_44.GetCursorPosY; // IMGUI_API void SetCursorPos(const ImVec2& local_pos); // " function SetCursorPos(local_pos) { bind.SetCursorPos(local_pos); } exports.SetCursorPos = SetCursorPos; // IMGUI_API void SetCursorPosX(float x); // " -var bind_imgui_40 = require("./bind-imgui"); -exports.SetCursorPosX = bind_imgui_40.SetCursorPosX; +var bind_imgui_45 = require("./bind-imgui"); +exports.SetCursorPosX = bind_imgui_45.SetCursorPosX; // IMGUI_API void SetCursorPosY(float y); // " -var bind_imgui_41 = require("./bind-imgui"); -exports.SetCursorPosY = bind_imgui_41.SetCursorPosY; +var bind_imgui_46 = require("./bind-imgui"); +exports.SetCursorPosY = bind_imgui_46.SetCursorPosY; // IMGUI_API ImVec2 GetCursorStartPos(); // initial cursor position function GetCursorStartPos(out = new ImVec2()) { return bind.GetCursorStartPos(out); } exports.GetCursorStartPos = GetCursorStartPos; @@ -1584,20 +1710,20 @@ function SetCursorScreenPos(pos) { bind.SetCursorScreenPos(pos); } exports.SetCursorScreenPos = SetCursorScreenPos; // IMGUI_API void AlignTextToFramePadding(); // vertically align/lower upcoming text to FramePadding.y so that it will aligns to upcoming widgets (call if you have text on a line before regular widgets) -var bind_imgui_42 = require("./bind-imgui"); -exports.AlignTextToFramePadding = bind_imgui_42.AlignTextToFramePadding; +var bind_imgui_47 = require("./bind-imgui"); +exports.AlignTextToFramePadding = bind_imgui_47.AlignTextToFramePadding; // IMGUI_API float GetTextLineHeight(); // ~ FontSize -var bind_imgui_43 = require("./bind-imgui"); -exports.GetTextLineHeight = bind_imgui_43.GetTextLineHeight; +var bind_imgui_48 = require("./bind-imgui"); +exports.GetTextLineHeight = bind_imgui_48.GetTextLineHeight; // IMGUI_API float GetTextLineHeightWithSpacing(); // ~ FontSize + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of text) -var bind_imgui_44 = require("./bind-imgui"); -exports.GetTextLineHeightWithSpacing = bind_imgui_44.GetTextLineHeightWithSpacing; +var bind_imgui_49 = require("./bind-imgui"); +exports.GetTextLineHeightWithSpacing = bind_imgui_49.GetTextLineHeightWithSpacing; // IMGUI_API float GetFrameHeight(); // ~ FontSize + style.FramePadding.y * 2 -var bind_imgui_45 = require("./bind-imgui"); -exports.GetFrameHeight = bind_imgui_45.GetFrameHeight; +var bind_imgui_50 = require("./bind-imgui"); +exports.GetFrameHeight = bind_imgui_50.GetFrameHeight; // IMGUI_API float GetFrameHeightWithSpacing(); // ~ FontSize + style.FramePadding.y * 2 + style.ItemSpacing.y (distance in pixels between 2 consecutive lines of framed widgets) -var bind_imgui_46 = require("./bind-imgui"); -exports.GetFrameHeightWithSpacing = bind_imgui_46.GetFrameHeightWithSpacing; +var bind_imgui_51 = require("./bind-imgui"); +exports.GetFrameHeightWithSpacing = bind_imgui_51.GetFrameHeightWithSpacing; // Columns // You can also use SameLine(pos_x) for simplified columns. The columns API is still work-in-progress and rather lacking. // IMGUI_API void Columns(int count = 1, const char* id = NULL, bool border = true); @@ -1607,30 +1733,30 @@ } exports.Columns = Columns; // IMGUI_API void NextColumn(); // next column, defaults to current row or next row if the current row is finished -var bind_imgui_47 = require("./bind-imgui"); -exports.NextColumn = bind_imgui_47.NextColumn; +var bind_imgui_52 = require("./bind-imgui"); +exports.NextColumn = bind_imgui_52.NextColumn; // IMGUI_API int GetColumnIndex(); // get current column index -var bind_imgui_48 = require("./bind-imgui"); -exports.GetColumnIndex = bind_imgui_48.GetColumnIndex; +var bind_imgui_53 = require("./bind-imgui"); +exports.GetColumnIndex = bind_imgui_53.GetColumnIndex; // IMGUI_API float GetColumnWidth(int column_index = -1); // get column width (in pixels). pass -1 to use current column function GetColumnWidth(column_index = -1) { return bind.GetColumnWidth(column_index); } exports.GetColumnWidth = GetColumnWidth; // IMGUI_API void SetColumnWidth(int column_index, float width); // set column width (in pixels). pass -1 to use current column -var bind_imgui_49 = require("./bind-imgui"); -exports.SetColumnWidth = bind_imgui_49.SetColumnWidth; +var bind_imgui_54 = require("./bind-imgui"); +exports.SetColumnWidth = bind_imgui_54.SetColumnWidth; // IMGUI_API float GetColumnOffset(int column_index = -1); // get position of column line (in pixels, from the left side of the contents region). pass -1 to use current column, otherwise 0..GetColumnsCount() inclusive. column 0 is typically 0.0f function GetColumnOffset(column_index = -1) { return bind.GetColumnOffset(column_index); } exports.GetColumnOffset = GetColumnOffset; // IMGUI_API void SetColumnOffset(int column_index, float offset_x); // set position of column line (in pixels, from the left side of the contents region). pass -1 to use current column -var bind_imgui_50 = require("./bind-imgui"); -exports.SetColumnOffset = bind_imgui_50.SetColumnOffset; +var bind_imgui_55 = require("./bind-imgui"); +exports.SetColumnOffset = bind_imgui_55.SetColumnOffset; // IMGUI_API int GetColumnsCount(); -var bind_imgui_51 = require("./bind-imgui"); -exports.GetColumnsCount = bind_imgui_51.GetColumnsCount; +var bind_imgui_56 = require("./bind-imgui"); +exports.GetColumnsCount = bind_imgui_56.GetColumnsCount; // ID scopes // If you are creating widgets in a loop you most likely want to push a unique identifier (e.g. object pointer, loop index) so ImGui can differentiate them. // You can also use the "##foobar" syntax within widget label to distinguish them from each others. Read "A primer on the use of labels/IDs" in the FAQ for more details. @@ -1638,16 +1764,16 @@ // IMGUI_API void PushID(const char* str_id_begin, const char* str_id_end); // IMGUI_API void PushID(const void* ptr_id); // IMGUI_API void PushID(int int_id); -var bind_imgui_52 = require("./bind-imgui"); -exports.PushID = bind_imgui_52.PushID; +var bind_imgui_57 = require("./bind-imgui"); +exports.PushID = bind_imgui_57.PushID; // IMGUI_API void PopID(); -var bind_imgui_53 = require("./bind-imgui"); -exports.PopID = bind_imgui_53.PopID; +var bind_imgui_58 = require("./bind-imgui"); +exports.PopID = bind_imgui_58.PopID; // IMGUI_API ImGuiID GetID(const char* str_id); // calculate unique ID (hash of whole ID stack + given parameter). e.g. if you want to query into ImGuiStorage yourself // IMGUI_API ImGuiID GetID(const char* str_id_begin, const char* str_id_end); // IMGUI_API ImGuiID GetID(const void* ptr_id); -var bind_imgui_54 = require("./bind-imgui"); -exports.GetID = bind_imgui_54.GetID; +var bind_imgui_59 = require("./bind-imgui"); +exports.GetID = bind_imgui_59.GetID; // Widgets: Text // IMGUI_API void TextUnformatted(const char* text, const char* text_end = NULL); // raw text without formatting. Roughly equivalent to Text("%s", text) but: A) doesn't require null terminated string if 'text_end' is specified, B) it's faster, no memory copy is done, no buffer size limits, recommended for long chunks of text. function TextUnformatted(text) { bind.TextUnformatted(text); } @@ -1679,8 +1805,8 @@ function BulletText(fmt /*, ...args: any[]*/) { bind.BulletText(fmt /*, ...args*/); } exports.BulletText = BulletText; // IMGUI_API void Bullet(); // draw a small circle and keep the cursor on the same line. advance cursor x position by GetTreeNodeToLabelSpacing(), same distance that TreeNode() uses -var bind_imgui_55 = require("./bind-imgui"); -exports.Bullet = bind_imgui_55.Bullet; +var bind_imgui_60 = require("./bind-imgui"); +exports.Bullet = bind_imgui_60.Bullet; // Widgets: Main // IMGUI_API bool Button(const char* label, const ImVec2& size = ImVec2(0,0)); // button function Button(label, size = ImVec2.ZERO) { @@ -1688,8 +1814,8 @@ } exports.Button = Button; // IMGUI_API bool SmallButton(const char* label); // button with FramePadding=(0,0) to easily embed within text -var bind_imgui_56 = require("./bind-imgui"); -exports.SmallButton = bind_imgui_56.SmallButton; +var bind_imgui_61 = require("./bind-imgui"); +exports.SmallButton = bind_imgui_61.SmallButton; // IMGUI_API bool InvisibleButton(const char* str_id, const ImVec2& size); // button behavior without the visuals, useful to build custom behaviors using the public api (along with IsItemActive, IsItemHovered, etc.) function InvisibleButton(str_id, size) { return bind.InvisibleButton(str_id, size); @@ -1720,7 +1846,15 @@ exports.Checkbox = Checkbox; // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); function CheckboxFlags(label, flags, flags_value) { - return bind.CheckboxFlags(label, flags, flags_value); + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } + else { + const ref_flags = [flags()]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } exports.CheckboxFlags = CheckboxFlags; // IMGUI_API bool RadioButton(const char* label, bool active); @@ -1777,7 +1911,7 @@ } exports.ProgressBar = ProgressBar; // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); function BeginCombo(label, preview_value, flags = 0) { @@ -2276,17 +2410,17 @@ exports.TreeNodeEx = TreeNodeEx; // IMGUI_API void TreePush(const char* str_id); // ~ Indent()+PushId(). Already called by TreeNode() when returning true, but you can call Push/Pop yourself for layout purpose // IMGUI_API void TreePush(const void* ptr_id = NULL); // " -var bind_imgui_57 = require("./bind-imgui"); -exports.TreePush = bind_imgui_57.TreePush; +var bind_imgui_62 = require("./bind-imgui"); +exports.TreePush = bind_imgui_62.TreePush; // IMGUI_API void TreePop(); // ~ Unindent()+PopId() -var bind_imgui_58 = require("./bind-imgui"); -exports.TreePop = bind_imgui_58.TreePop; +var bind_imgui_63 = require("./bind-imgui"); +exports.TreePop = bind_imgui_63.TreePop; // IMGUI_API void TreeAdvanceToLabelPos(); // advance cursor x position by GetTreeNodeToLabelSpacing() -var bind_imgui_59 = require("./bind-imgui"); -exports.TreeAdvanceToLabelPos = bind_imgui_59.TreeAdvanceToLabelPos; +var bind_imgui_64 = require("./bind-imgui"); +exports.TreeAdvanceToLabelPos = bind_imgui_64.TreeAdvanceToLabelPos; // IMGUI_API float GetTreeNodeToLabelSpacing(); // horizontal distance preceding label when using TreeNode*() or Bullet() == (g.FontSize + style.FramePadding.x*2) for a regular unframed TreeNode -var bind_imgui_60 = require("./bind-imgui"); -exports.GetTreeNodeToLabelSpacing = bind_imgui_60.GetTreeNodeToLabelSpacing; +var bind_imgui_65 = require("./bind-imgui"); +exports.GetTreeNodeToLabelSpacing = bind_imgui_65.GetTreeNodeToLabelSpacing; // IMGUI_API void SetNextTreeNodeOpen(bool is_open, ImGuiCond cond = 0); // set next TreeNode/CollapsingHeader open state. function SetNextTreeNodeOpen(is_open, cond = 0) { bind.SetNextTreeNodeOpen(is_open, cond); @@ -2365,30 +2499,30 @@ } exports.SetTooltip = SetTooltip; // IMGUI_API void BeginTooltip(); // begin/append a tooltip window. to create full-featured tooltip (with any kind of contents). -var bind_imgui_61 = require("./bind-imgui"); -exports.BeginTooltip = bind_imgui_61.BeginTooltip; +var bind_imgui_66 = require("./bind-imgui"); +exports.BeginTooltip = bind_imgui_66.BeginTooltip; // IMGUI_API void EndTooltip(); -var bind_imgui_62 = require("./bind-imgui"); -exports.EndTooltip = bind_imgui_62.EndTooltip; +var bind_imgui_67 = require("./bind-imgui"); +exports.EndTooltip = bind_imgui_67.EndTooltip; // Menus // IMGUI_API bool BeginMainMenuBar(); // create and append to a full screen menu-bar. only call EndMainMenuBar() if this returns true! -var bind_imgui_63 = require("./bind-imgui"); -exports.BeginMainMenuBar = bind_imgui_63.BeginMainMenuBar; +var bind_imgui_68 = require("./bind-imgui"); +exports.BeginMainMenuBar = bind_imgui_68.BeginMainMenuBar; // IMGUI_API void EndMainMenuBar(); -var bind_imgui_64 = require("./bind-imgui"); -exports.EndMainMenuBar = bind_imgui_64.EndMainMenuBar; +var bind_imgui_69 = require("./bind-imgui"); +exports.EndMainMenuBar = bind_imgui_69.EndMainMenuBar; // IMGUI_API bool BeginMenuBar(); // append to menu-bar of current window (requires ImGuiWindowFlags_MenuBar flag set on parent window). only call EndMenuBar() if this returns true! -var bind_imgui_65 = require("./bind-imgui"); -exports.BeginMenuBar = bind_imgui_65.BeginMenuBar; +var bind_imgui_70 = require("./bind-imgui"); +exports.BeginMenuBar = bind_imgui_70.BeginMenuBar; // IMGUI_API void EndMenuBar(); -var bind_imgui_66 = require("./bind-imgui"); -exports.EndMenuBar = bind_imgui_66.EndMenuBar; +var bind_imgui_71 = require("./bind-imgui"); +exports.EndMenuBar = bind_imgui_71.EndMenuBar; // IMGUI_API bool BeginMenu(const char* label, bool enabled = true); // create a sub-menu entry. only call EndMenu() if this returns true! function BeginMenu(label, enabled = true) { return bind.BeginMenu(label, enabled); } exports.BeginMenu = BeginMenu; // IMGUI_API void EndMenu(); -var bind_imgui_67 = require("./bind-imgui"); -exports.EndMenu = bind_imgui_67.EndMenu; +var bind_imgui_72 = require("./bind-imgui"); +exports.EndMenu = bind_imgui_72.EndMenu; // IMGUI_API bool MenuItem(const char* label, const char* shortcut = NULL, bool selected = false, bool enabled = true); // return true when activated. shortcuts are displayed for convenience but not processed by ImGui at the moment // IMGUI_API bool MenuItem(const char* label, const char* shortcut, bool* p_selected, bool enabled = true); // return true when activated + toggle (*p_selected) if p_selected != NULL function MenuItem(label, shortcut = null, selected = false, enabled = true) { @@ -2412,16 +2546,16 @@ exports.MenuItem = MenuItem; // Popups // IMGUI_API void OpenPopup(const char* str_id); // call to mark popup as open (don't call every frame!). popups are closed when user click outside, or if CloseCurrentPopup() is called within a BeginPopup()/EndPopup() block. By default, Selectable()/MenuItem() are calling CloseCurrentPopup(). Popup identifiers are relative to the current ID-stack (so OpenPopup and BeginPopup needs to be at the same level). -var bind_imgui_68 = require("./bind-imgui"); -exports.OpenPopup = bind_imgui_68.OpenPopup; +var bind_imgui_73 = require("./bind-imgui"); +exports.OpenPopup = bind_imgui_73.OpenPopup; // IMGUI_API bool OpenPopupOnItemClick(const char* str_id = NULL, int mouse_button = 1); // helper to open popup when clicked on last item. return true when just opened. function OpenPopupOnItemClick(str_id = "", mouse_button = 1) { return bind.OpenPopupOnItemClick(str_id, mouse_button); } exports.OpenPopupOnItemClick = OpenPopupOnItemClick; // IMGUI_API bool BeginPopup(const char* str_id); // return true if the popup is open, and you can start outputting to it. only call EndPopup() if BeginPopup() returned true! -var bind_imgui_69 = require("./bind-imgui"); -exports.BeginPopup = bind_imgui_69.BeginPopup; +var bind_imgui_74 = require("./bind-imgui"); +exports.BeginPopup = bind_imgui_74.BeginPopup; // IMGUI_API bool BeginPopupModal(const char* name, bool* p_open = NULL, ImGuiWindowFlags extra_flags = 0); // modal dialog (block interactions behind the modal window, can't close the modal window by clicking outside) function BeginPopupModal(str_id = "", p_open = null, extra_flags = 0) { p_open = p_open || [true]; @@ -2444,14 +2578,14 @@ } exports.BeginPopupContextVoid = BeginPopupContextVoid; // IMGUI_API void EndPopup(); -var bind_imgui_70 = require("./bind-imgui"); -exports.EndPopup = bind_imgui_70.EndPopup; +var bind_imgui_75 = require("./bind-imgui"); +exports.EndPopup = bind_imgui_75.EndPopup; // IMGUI_API bool IsPopupOpen(const char* str_id); // return true if the popup is open -var bind_imgui_71 = require("./bind-imgui"); -exports.IsPopupOpen = bind_imgui_71.IsPopupOpen; +var bind_imgui_76 = require("./bind-imgui"); +exports.IsPopupOpen = bind_imgui_76.IsPopupOpen; // IMGUI_API void CloseCurrentPopup(); // close the popup we have begin-ed into. clicking on a MenuItem or Selectable automatically close the current popup. -var bind_imgui_72 = require("./bind-imgui"); -exports.CloseCurrentPopup = bind_imgui_72.CloseCurrentPopup; +var bind_imgui_77 = require("./bind-imgui"); +exports.CloseCurrentPopup = bind_imgui_77.CloseCurrentPopup; // Logging/Capture: all text output from interface is captured to tty/file/clipboard. By default, tree nodes are automatically opened during logging. // IMGUI_API void LogToTTY(int max_depth = -1); // start logging to tty function LogToTTY(max_depth = -1) { @@ -2469,11 +2603,11 @@ } exports.LogToClipboard = LogToClipboard; // IMGUI_API void LogFinish(); // stop logging (close file, etc.) -var bind_imgui_73 = require("./bind-imgui"); -exports.LogFinish = bind_imgui_73.LogFinish; +var bind_imgui_78 = require("./bind-imgui"); +exports.LogFinish = bind_imgui_78.LogFinish; // IMGUI_API void LogButtons(); // helper to display buttons for logging to tty/file/clipboard -var bind_imgui_74 = require("./bind-imgui"); -exports.LogButtons = bind_imgui_74.LogButtons; +var bind_imgui_79 = require("./bind-imgui"); +exports.LogButtons = bind_imgui_79.LogButtons; // IMGUI_API void LogText(const char* fmt, ...) IM_FMTARGS(1); // pass text data straight to log (without being displayed) function LogText(fmt) { bind.LogText(fmt); @@ -2520,67 +2654,12 @@ bind.PopClipRect(); } exports.PopClipRect = PopClipRect; -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -function StyleColorsClassic(dst = null) { - if (dst === null) { - bind.StyleColorsClassic(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsClassic = StyleColorsClassic; -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -function StyleColorsDark(dst = null) { - if (dst === null) { - bind.StyleColorsDark(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsDark = StyleColorsDark; -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -function StyleColorsLight(dst = null) { - if (dst === null) { - bind.StyleColorsLight(null); - } - else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } - else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} -exports.StyleColorsLight = StyleColorsLight; // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) // IMGUI_API void SetItemDefaultFocus(); // make last item the default focused item of a window (WIP navigation branch only). Pleaase use instead of SetScrollHere(). -var bind_imgui_75 = require("./bind-imgui"); -exports.SetItemDefaultFocus = bind_imgui_75.SetItemDefaultFocus; +var bind_imgui_80 = require("./bind-imgui"); +exports.SetItemDefaultFocus = bind_imgui_80.SetItemDefaultFocus; // IMGUI_API void SetKeyboardFocusHere(int offset = 0); // focus keyboard on the next widget. Use positive 'offset' to access sub components of a multiple component widget. Use -1 to access previous widget. function SetKeyboardFocusHere(offset = 0) { bind.SetKeyboardFocusHere(offset); @@ -2593,22 +2672,28 @@ } exports.IsItemHovered = IsItemHovered; // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) -var bind_imgui_76 = require("./bind-imgui"); -exports.IsItemActive = bind_imgui_76.IsItemActive; +var bind_imgui_81 = require("./bind-imgui"); +exports.IsItemActive = bind_imgui_81.IsItemActive; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +var bind_imgui_82 = require("./bind-imgui"); +exports.IsItemFocused = bind_imgui_82.IsItemFocused; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) function IsItemClicked(mouse_button = 0) { return bind.IsItemClicked(mouse_button); } exports.IsItemClicked = IsItemClicked; // IMGUI_API bool IsItemVisible(); // is the last item visible? (aka not out of sight due to clipping/scrolling.) -var bind_imgui_77 = require("./bind-imgui"); -exports.IsItemVisible = bind_imgui_77.IsItemVisible; +var bind_imgui_83 = require("./bind-imgui"); +exports.IsItemVisible = bind_imgui_83.IsItemVisible; // IMGUI_API bool IsAnyItemHovered(); -var bind_imgui_78 = require("./bind-imgui"); -exports.IsAnyItemHovered = bind_imgui_78.IsAnyItemHovered; +var bind_imgui_84 = require("./bind-imgui"); +exports.IsAnyItemHovered = bind_imgui_84.IsAnyItemHovered; // IMGUI_API bool IsAnyItemActive(); -var bind_imgui_79 = require("./bind-imgui"); -exports.IsAnyItemActive = bind_imgui_79.IsAnyItemActive; +var bind_imgui_85 = require("./bind-imgui"); +exports.IsAnyItemActive = bind_imgui_85.IsAnyItemActive; +// IMGUI_API bool IsAnyItemFocused(); +var bind_imgui_86 = require("./bind-imgui"); +exports.IsAnyItemFocused = bind_imgui_86.IsAnyItemFocused; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space function GetItemRectMin(out = new ImVec2()) { return bind.GetItemRectMin(out); @@ -2625,8 +2710,8 @@ } exports.GetItemRectSize = GetItemRectSize; // IMGUI_API void SetItemAllowOverlap(); // allow last item to be overlapped by a subsequent item. sometimes useful with invisible buttons, selectables, etc. to catch unused area. -var bind_imgui_80 = require("./bind-imgui"); -exports.SetItemAllowOverlap = bind_imgui_80.SetItemAllowOverlap; +var bind_imgui_87 = require("./bind-imgui"); +exports.SetItemAllowOverlap = bind_imgui_87.SetItemAllowOverlap; // IMGUI_API bool IsWindowFocused(ImGuiFocusedFlags flags = 0); // is current window focused? or its root/child, depending on flags. see flags for options. function IsWindowFocused(flags = 0) { return bind.IsWindowFocused(flags); @@ -2637,12 +2722,6 @@ return bind.IsWindowHovered(flags); } exports.IsWindowHovered = IsWindowHovered; -// IMGUI_API bool IsAnyWindowFocused(); -var bind_imgui_81 = require("./bind-imgui"); -exports.IsAnyWindowFocused = bind_imgui_81.IsAnyWindowFocused; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -var bind_imgui_82 = require("./bind-imgui"); -exports.IsAnyWindowHovered = bind_imgui_82.IsAnyWindowHovered; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. function IsRectVisible(size_or_rect_min, rect_max) { @@ -2650,11 +2729,11 @@ } exports.IsRectVisible = IsRectVisible; // IMGUI_API float GetTime(); -var bind_imgui_83 = require("./bind-imgui"); -exports.GetTime = bind_imgui_83.GetTime; +var bind_imgui_88 = require("./bind-imgui"); +exports.GetTime = bind_imgui_88.GetTime; // IMGUI_API int GetFrameCount(); -var bind_imgui_84 = require("./bind-imgui"); -exports.GetFrameCount = bind_imgui_84.GetFrameCount; +var bind_imgui_89 = require("./bind-imgui"); +exports.GetFrameCount = bind_imgui_89.GetFrameCount; // IMGUI_API ImDrawList* GetOverlayDrawList(); // this draw list will be the last rendered one, useful to quickly draw overlays shapes/text function GetOverlayDrawList() { return new ImDrawList(bind.GetOverlayDrawList()); @@ -2666,13 +2745,8 @@ } exports.GetDrawListSharedData = GetDrawListSharedData; // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); -var bind_imgui_85 = require("./bind-imgui"); -exports.GetStyleColorName = bind_imgui_85.GetStyleColorName; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -function CalcItemRectClosestPoint(pos, on_edge = false, outward = +0.0, out = new ImVec2()) { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} -exports.CalcItemRectClosestPoint = CalcItemRectClosestPoint; +var bind_imgui_90 = require("./bind-imgui"); +exports.GetStyleColorName = bind_imgui_90.GetStyleColorName; // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); function CalcTextSize(text, text_end = null, hide_text_after_double_hash = false, wrap_width = -1, out = new ImVec2()) { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2689,8 +2763,8 @@ } exports.BeginChildFrame = BeginChildFrame; // IMGUI_API void EndChildFrame(); -var bind_imgui_86 = require("./bind-imgui"); -exports.EndChildFrame = bind_imgui_86.EndChildFrame; +var bind_imgui_91 = require("./bind-imgui"); +exports.EndChildFrame = bind_imgui_91.EndChildFrame; // IMGUI_API ImVec4 ColorConvertU32ToFloat4(ImU32 in); function ColorConvertU32ToFloat4(in_, out = new ImVec4()) { return bind.ColorConvertU32ToFloat4(in_, out); @@ -2702,11 +2776,11 @@ } exports.ColorConvertFloat4ToU32 = ColorConvertFloat4ToU32; // IMGUI_API void ColorConvertRGBtoHSV(float r, float g, float b, float& out_h, float& out_s, float& out_v); -var bind_imgui_87 = require("./bind-imgui"); -exports.ColorConvertRGBtoHSV = bind_imgui_87.ColorConvertRGBtoHSV; +var bind_imgui_92 = require("./bind-imgui"); +exports.ColorConvertRGBtoHSV = bind_imgui_92.ColorConvertRGBtoHSV; // IMGUI_API void ColorConvertHSVtoRGB(float h, float s, float v, float& out_r, float& out_g, float& out_b); -var bind_imgui_88 = require("./bind-imgui"); -exports.ColorConvertHSVtoRGB = bind_imgui_88.ColorConvertHSVtoRGB; +var bind_imgui_93 = require("./bind-imgui"); +exports.ColorConvertHSVtoRGB = bind_imgui_93.ColorConvertHSVtoRGB; // Inputs // IMGUI_API int GetKeyIndex(ImGuiKey imgui_key); // map ImGuiKey_* values into user's key index. == io.KeyMap[key] function GetKeyIndex(imgui_key) { @@ -2789,11 +2863,11 @@ } exports.ResetMouseDragDelta = ResetMouseDragDelta; // IMGUI_API ImGuiMouseCursor GetMouseCursor(); // get desired cursor type, reset in ImGui::NewFrame(), this is updated during the frame. valid before Render(). If you use software rendering by setting io.MouseDrawCursor ImGui will render those for you -var bind_imgui_89 = require("./bind-imgui"); -exports.GetMouseCursor = bind_imgui_89.GetMouseCursor; +var bind_imgui_94 = require("./bind-imgui"); +exports.GetMouseCursor = bind_imgui_94.GetMouseCursor; // IMGUI_API void SetMouseCursor(ImGuiMouseCursor type); // set desired cursor type -var bind_imgui_90 = require("./bind-imgui"); -exports.SetMouseCursor = bind_imgui_90.SetMouseCursor; +var bind_imgui_95 = require("./bind-imgui"); +exports.SetMouseCursor = bind_imgui_95.SetMouseCursor; // IMGUI_API void CaptureKeyboardFromApp(bool capture = true); // manually override io.WantCaptureKeyboard flag next frame (said flag is entirely left for your application handle). e.g. force capture keyboard when your widget is being hovered. function CaptureKeyboardFromApp(capture = true) { return bind.CaptureKeyboardFromApp(capture); @@ -2806,40 +2880,15 @@ exports.CaptureMouseFromApp = CaptureMouseFromApp; // Helpers functions to access functions pointers in ImGui::GetIO() // IMGUI_API void* MemAlloc(size_t sz); -var bind_imgui_91 = require("./bind-imgui"); -exports.MemAlloc = bind_imgui_91.MemAlloc; -// IMGUI_API void MemFree(void* ptr); -var bind_imgui_92 = require("./bind-imgui"); -exports.MemFree = bind_imgui_92.MemFree; -// IMGUI_API const char* GetClipboardText(); -var bind_imgui_93 = require("./bind-imgui"); -exports.GetClipboardText = bind_imgui_93.GetClipboardText; -// IMGUI_API void SetClipboardText(const char* text); -var bind_imgui_94 = require("./bind-imgui"); -exports.SetClipboardText = bind_imgui_94.SetClipboardText; -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -var bind_imgui_95 = require("./bind-imgui"); -exports.GetVersion = bind_imgui_95.GetVersion; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -function CreateContext() { - return bind.CreateContext(); -} -exports.CreateContext = CreateContext; -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -function DestroyContext(ctx = null) { - return bind.DestroyContext(ctx); -} -exports.DestroyContext = DestroyContext; -// IMGUI_API ImGuiContext* GetCurrentContext(); var bind_imgui_96 = require("./bind-imgui"); -exports.GetCurrentContext = bind_imgui_96.GetCurrentContext; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +exports.MemAlloc = bind_imgui_96.MemAlloc; +// IMGUI_API void MemFree(void* ptr); var bind_imgui_97 = require("./bind-imgui"); -exports.SetCurrentContext = bind_imgui_97.SetCurrentContext; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBMEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFB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QyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file +exports.MemFree = bind_imgui_97.MemFree; +// IMGUI_API const char* GetClipboardText(); +var bind_imgui_98 = require("./bind-imgui"); +exports.GetClipboardText = bind_imgui_98.GetClipboardText; +// IMGUI_API void SetClipboardText(const char* text); +var bind_imgui_99 = require("./bind-imgui"); +exports.SetClipboardText = bind_imgui_99.SetClipboardText; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbWd1aS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFDQUFxQztBQUNyQyxxQ0FBcUM7QUFFckMsMkNBQTZDO0FBQXBDLHFDQUFBLGFBQWEsQ0FBQTtBQUV0QixtQkFBMEIsS0FBdUIsSUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFBQyxNQUFNLElBQUksS0FBSyxFQUFFLENBQUM7QUFBQyxDQUFDLENBQUMsQ0FBQztBQUEvRiw4QkFBK0Y7QUFFL0Ysc0JBQTZCLElBQXFDO0lBQzlELEVBQUUsQ0FBQyxDQUFDLElBQUksWUFBWSxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBTkQsb0NBTUM7QUFFRDtJQUNJLFlBQW1CLElBQVksRUFBUyxTQUFpQixFQUFFO1FBQXhDLFNBQUksR0FBSixJQUFJLENBQVE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO0lBQUcsQ0FBQztDQUNsRTtBQUZELHdDQUVDO0FBNEJELDJDQUFnRDtBQUF2Qyx3Q0FBQSxnQkFBZ0IsQ0FBQTtBQUV6QjtJQU1JLFlBQW1CLElBQVksR0FBRyxFQUFTLElBQVksR0FBRztRQUF2QyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztJQUFHLENBQUM7SUFFdkQsSUFBSSxDQUFDLEtBQXNDO1FBQzlDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQXNDO1FBQ2hELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQUMsQ0FBQztRQUN6QyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUFDLENBQUM7UUFDekMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDOztBQWpCc0IsV0FBSSxHQUFxQixJQUFJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDOUMsV0FBSSxHQUFxQixJQUFJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDOUMsYUFBTSxHQUFxQixJQUFJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDaEQsYUFBTSxHQUFxQixJQUFJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFKM0Usd0JBbUJDO0FBR0QsMkNBQWdEO0FBQXZDLHdDQUFBLGdCQUFnQixDQUFBO0FBRXpCO0lBVUksWUFBbUIsSUFBWSxHQUFHLEVBQVMsSUFBWSxHQUFHLEVBQVMsSUFBWSxHQUFHLEVBQVMsSUFBWSxHQUFHO1FBQXZGLE1BQUMsR0FBRCxDQUFDLENBQWM7UUFBUyxNQUFDLEdBQUQsQ0FBQyxDQUFjO1FBQVMsTUFBQyxHQUFELENBQUMsQ0FBYztRQUFTLE1BQUMsR0FBRCxDQUFDLENBQWM7SUFBRyxDQUFDO0lBRXZHLElBQUksQ0FBQyxLQUFzQztRQUM5QyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQXNDO1FBQ2hELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQUMsQ0FBQztRQUN6QyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUFDLENBQUM7UUFDekMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFBQyxDQUFDO1FBQ3pDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQUMsQ0FBQztRQUN6QyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ2hCLENBQUM7O0FBekJzQixXQUFJLEdBQXFCLElBQUksTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQ3hELFdBQUksR0FBcUIsSUFBSSxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDeEQsYUFBTSxHQUFxQixJQUFJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUMxRCxhQUFNLEdBQXFCLElBQUksTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzFELGFBQU0sR0FBcUIsSUFBSSxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDMUQsYUFBTSxHQUFxQixJQUFJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUMxRCxZQUFLLEdBQXFCLElBQUksTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQ3pELFlBQUssR0FBcUIsSUFBSSxNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFScEYsd0JBMkJDO0FBRUQsK0VBQStFO0FBQy9FLFVBQVU7QUFDViwrRUFBK0U7QUFFL0Usb01BQW9NO0FBQ3BNLHlMQUF5TDtBQUN6TDtJQUFBO1FBR1csU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUt0QixVQUFVO1FBQ1Ysb0NBQW9DO1FBQ3BDLHdDQUF3QztRQUN4QyxvQ0FBb0M7UUFFcEMsMENBQTBDO1FBQzFDLHdDQUF3QztRQUN4Qyw4Q0FBOEM7UUFFOUMsb0VBQW9FO1FBQ3BFLGtFQUFrRTtRQUVsRSxvRkFBb0Y7UUFDcEYsK0VBQStFO1FBQy9FLG1GQUFtRjtRQUVuRix1R0FBdUc7UUFDdkcsdUdBQXVHO1FBRXZHLHdJQUF3STtRQUN4SSwrRUFBK0U7UUFDL0UsK0VBQStFO1FBQy9FLHNGQUFzRjtRQUN0RixzRkFBc0Y7UUFDdEYsdUdBQXVHO1FBQ3ZHLHVHQUF1RztRQUN2Ryw4R0FBOEc7UUFDOUcsOEdBQThHO1FBQzlHLHlRQUF5UTtRQUV6USwrS0FBK0s7UUFFL0ssK0lBQStJO1FBQy9JLHVOQUF1TjtRQUN2Tix3REFBd0Q7UUFDeEQsSUFBSTtRQUNKLG9DQUFvQztRQUNwQyxrQkFBa0I7UUFDbEIsb0ZBQW9GO1FBQ3BGLGdCQUFnQjtRQUNoQiw0REFBNEQ7UUFDNUQsNEJBQTRCO1FBQzVCLHVCQUF1QjtRQUN2QiwrQkFBK0I7UUFDL0IsSUFBSTtRQUVKLDZJQUE2STtRQUM3SSwrRkFBK0Y7UUFDL0YscUhBQXFIO1FBRXJILG1RQUFtUTtRQUNuUSw2V0FBNlc7UUFDN1csK01BQStNO0lBQ25OLENBQUM7SUEzREcsSUFBVyxJQUFJLEtBQWEsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUUvQyxLQUFLLEtBQWMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkQsS0FBSyxLQUFXLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkMsUUFBUSxLQUFvQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDckQsU0FBUyxDQUFDLEtBQVEsSUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FzRDlEO0FBN0RELDRCQTZEQztBQUVELHlFQUF5RTtBQUN6RTtJQXdCSSx3RUFBd0U7SUFDeEUsWUFBWSxpQkFBeUIsRUFBRTtRQXZCdkMsbUJBQW1CO1FBQ25CLElBQUk7UUFDSixxQkFBcUI7UUFDckIscUJBQXFCO1FBRXJCLG9DQUFvQztRQUNwQyxvRUFBb0U7UUFDcEUsOENBQThDO1FBQzlDLDRDQUE0QztRQUM1Qyw0Q0FBNEM7UUFDNUMsd0NBQXdDO1FBQ3hDLHFFQUFxRTtRQUNyRSx1R0FBdUc7UUFDdkcsc0VBQXNFO1FBQ3RFLEtBQUs7UUFFTCxxQ0FBcUM7UUFDckMsYUFBUSxHQUFtQixJQUFJLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRCwrQkFBK0I7UUFDL0IsaUNBQWlDO1FBQ2pDLGNBQVMsR0FBVyxDQUFDLENBQUM7UUFJbEIsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLENBQ25CLENBQUM7WUFDRywrREFBK0Q7WUFDL0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQixDQUFDO1FBQ0QsSUFBSSxDQUNKLENBQUM7WUFDRyxtQkFBbUI7WUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7SUFDTCxDQUFDO0lBQ0QsOEhBQThIO0lBQ3ZILElBQUksQ0FBQyxRQUFnQixtQkFBbUIsRUFBRSxRQUFnQixHQUFHO1FBQ2hFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxHQUFHLENBQUM7WUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLE1BQU0sYUFBYSxHQUFZLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDNUYsRUFBRSxDQUFDLENBQUMsS0FBSyxLQUFLLEdBQUcsQ0FBQztZQUNkLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QixFQUFFLENBQUMsQ0FBQyxhQUFhLENBQUM7WUFDZCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUN6QixDQUFDO0lBQ0QsdUZBQXVGO0lBQ2hGLFVBQVUsQ0FBQyxJQUFZLEVBQUUsV0FBMEIsSUFBSTtRQUMxRCx1QkFBdUI7UUFDdkIsbUJBQW1CO1FBRW5CLG9CQUFvQjtRQUNwQixpQkFBaUI7UUFFakIsMENBQTBDO1FBQzFDLElBQUk7UUFDSix1Q0FBdUM7UUFDdkMscUJBQXFCO1FBQ3JCLG9CQUFvQjtRQUNwQiw0QkFBNEI7UUFDNUIsUUFBUTtRQUNSLHNCQUFzQjtRQUN0Qix1RUFBdUU7UUFDdkUsNEJBQTRCO1FBQzVCLFFBQVE7UUFDUixXQUFXO1FBQ1gsUUFBUTtRQUNSLGtCQUFrQjtRQUNsQixxRUFBcUU7UUFDckUsMkJBQTJCO1FBQzNCLFFBQVE7UUFDUixJQUFJO1FBRUosa0JBQWtCO1FBQ2xCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssQ0FBQyxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFFaEIsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsK0JBQStCO0lBQ3hCLEtBQUs7UUFDUixxQkFBcUI7UUFDckIsOERBQThEO1FBQzlELG1DQUFtQztRQUVuQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNuQiwwQ0FBMEM7UUFDMUMsSUFBSTtRQUNKLGdDQUFnQztRQUNoQyw4QkFBOEI7UUFDOUIsb0JBQW9CO1FBQ3BCLHFDQUFxQztRQUNyQywwQkFBMEI7UUFDMUIsSUFBSTtJQUNSLENBQUM7SUFDRCw0REFBNEQ7SUFDckQsS0FBSyxLQUFXLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakUsb0VBQW9FO0lBQzdELFFBQVEsS0FBYyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztDQUMvQztBQXZHRCwwQ0F1R0M7QUFFRCxvREFBb0Q7QUFDcEQ7SUFBQTtRQUVJLDJCQUEyQjtRQUMzQixRQUFHLEdBQVcsRUFBRSxDQUFDO1FBTWpCLDRDQUE0QztRQUM1QyxnRUFBZ0U7UUFDaEUsNkRBQTZEO1FBQzdELHFJQUFxSTtRQUNySSw0REFBNEQ7UUFDNUQsd0RBQXdEO1FBQ3hELGlFQUFpRTtRQUNqRSx1RUFBdUU7UUFDdkUseURBQXlEO1FBQ3pELG1FQUFtRTtRQUNuRSw2RUFBNkU7SUFDakYsQ0FBQztJQWhCRyxLQUFLLEtBQWEsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLElBQUksS0FBYSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQzFDLEtBQUssS0FBVyxJQUFJLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEMsTUFBTSxDQUFDLElBQVksSUFBVSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7Q0FhbkQ7QUFwQkQsMENBb0JDO0FBRUQsb0NBQW9DO0FBQ3BDLDJGQUEyRjtBQUMzRix5RkFBeUY7QUFDekYsbUlBQW1JO0FBQ25JLHdHQUF3RztBQUN4RywwSUFBMEk7QUFDMUksMElBQTBJO0FBQzFJLHFHQUFxRztBQUNyRztDQXVDQztBQXZDRCxvQ0F1Q0M7QUFFRCw0Q0FBNEM7QUFDNUM7Q0FtQkM7QUFuQkQsb0NBbUJDO0FBRUQsb0RBQW9EO0FBQ3ZDLFFBQUEsZ0JBQWdCLEdBQVcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN2RSxRQUFBLGdCQUFnQixHQUFXLENBQUMsQ0FBQztBQUM3QixRQUFBLGdCQUFnQixHQUFXLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDdkUsUUFBQSxnQkFBZ0IsR0FBVyxFQUFFLENBQUM7QUFDOUIsUUFBQSxlQUFlLEdBQVcsVUFBVSxDQUFDO0FBQ2xELGtCQUF5QixDQUFTLEVBQUUsQ0FBUyxFQUFFLENBQVMsRUFBRSxJQUFZLEdBQUc7SUFDckUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLHdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN6SCxDQUFDO0FBRkQsNEJBRUM7QUFDWSxRQUFBLGNBQWMsR0FBVyxRQUFRLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLENBQUMsQ0FBRSw0QkFBNEI7QUFDakYsUUFBQSxjQUFjLEdBQVcsUUFBUSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQVEsZUFBZTtBQUNwRSxRQUFBLG9CQUFvQixHQUFXLFFBQVEsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFJLGlDQUFpQztBQUVuRyx3R0FBd0c7QUFDeEcsNEdBQTRHO0FBQzVHLDhHQUE4RztBQUM5Ryx5TEFBeUw7QUFDekw7SUFLSSxvSEFBb0g7SUFDcEgsa01BQWtNO0lBQ2xNLDBUQUEwVDtJQUMxVCwwSEFBMEg7SUFDMUgsbUZBQW1GO0lBQ25GLFlBQVksSUFBMkQsR0FBRyxFQUFFLElBQVksR0FBRyxFQUFFLElBQVksR0FBRyxFQUFFLElBQVksR0FBRztRQVI3SCw2QkFBNkI7UUFDdEIsVUFBSyxHQUFXLElBQUksTUFBTSxFQUFFLENBQUM7UUFRaEMsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDekIsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNwRixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLHdCQUFnQixDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDcEYsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSx3QkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BGLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksd0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLENBQUM7WUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxD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 \ No newline at end of file diff --git a/imgui.ts b/imgui.ts index 8661239..cde5a2b 100644 --- a/imgui.ts +++ b/imgui.ts @@ -32,6 +32,8 @@ export { ImGuiHoveredFlags, ImGuiHoveredFlags as HoveredFlags } from "./bind-imgui"; export { ImGuiDragDropFlags, ImGuiDragDropFlags as DragDropFlags } from "./bind-imgui"; export { ImGuiKey, ImGuiKey as Key } from "./bind-imgui"; +export { ImGuiNavInput, ImGuiNavInput as NavInput } from "./bind-imgui"; +export { ImGuiNavFlags, ImGuiNavFlags as NavFlags } from "./bind-imgui"; export { ImGuiCol, ImGuiCol as Col } from "./bind-imgui"; export { ImGuiStyleVar, ImGuiStyleVar as StyleVar } from "./bind-imgui"; export { ImGuiColorEditFlags, ImGuiColorEditFlags as ColorEditFlags } from "./bind-imgui"; @@ -146,7 +148,7 @@ // inline void resize(int new_size, const T& v){ if (new_size > Capacity) reserve(_grow_capacity(new_size)); if (new_size > Size) for (int n = Size; n < new_size; n++) Data[n] = v; Size = new_size; } // inline void reserve(int new_capacity) // { - // if (new_capacity <= Capacity) + // if (new_capacity <= Capacity) // return; // T* new_data = (value_type*)ImGui::MemAlloc((size_t)new_capacity * sizeof(T)); // if (Data) @@ -254,7 +256,7 @@ // Filters.resize(0); // TextRange input_range(InputBuf, InputBuf+strlen(InputBuf)); // input_range.split(',', Filters); - + this.CountGrep = 0; // for (int i = 0; i != Filters.Size; i++) // { @@ -296,7 +298,7 @@ // Helper: Simple Key->value storage // Typically you don't have to worry about this since a storage is held within each Window. -// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. +// We use it to e.g. store collapse state for a tree (Int 0/1), store color edit options. // This is optimized for efficient reading (dichotomy into a contiguous buffer), rare writing (typically tied to user interactions) // You can use it as custom user storage for temporary values. Declare your own storage if, for example: // - You want to manipulate the open/close state of a particular sub-tree in your interface (tree node uses Int 0/1 to store their state). @@ -354,7 +356,7 @@ // ImGuiID SourceId; // Source item id // ImGuiID SourceParentId; // Source parent id (if available) // int DataFrameCount; // Data timestamp - // char DataType[8 + 1]; // Data type tag (short user-supplied string) + // char DataType[12 + 1]; // Data type tag (short user-supplied string, 12 characters max) // bool Preview; // Set when AcceptDragDropPayload() was called and mouse has been hovering the target item (nb: handle overlapping drag targets) // bool Delivery; // Set when AcceptDragDropPayload() was called and mouse button is released over the target item. @@ -499,12 +501,12 @@ public HasSelection(): boolean { return this.native.HasSelection(); } } -export type ImGuiSizeConstraintCallback = (data: ImGuiSizeConstraintCallbackData) => void; +export type ImGuiSizeConstraintCallback = (data: ImGuiSizeCallbackData) => void; // Resizing callback data to apply custom constraint. As enabled by SetNextWindowSizeConstraints(). Callback is called during the next Begin(). // NB: For basic min/max size constraint on each axis you don't need to use the callback! The SetNextWindowSizeConstraints() parameters are enough. -export class ImGuiSizeConstraintCallbackData { - constructor(public native: bind.ImGuiSizeConstraintCallbackData) {} +export class ImGuiSizeCallbackData { + constructor(public native: bind.ImGuiSizeCallbackData) {} delete(): void { if (this.native) { this.native.delete(); delete this.native; } } get UserData(): any { return this.native.UserData; } @@ -624,7 +626,7 @@ // You can override the vertex format layout by defining IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT in imconfig.h // The code expect ImVec2 pos (8 bytes), ImVec2 uv (8 bytes), ImU32 col (4 bytes), but you can re-order them or add other fields as needed to simplify integration in your engine. // The type has to be described within the macro (you can either declare the struct or use a typedef) -// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. +// NOTE: IMGUI DOESN'T CLEAR THE STRUCTURE AND DOESN'T CALL A CONSTRUCTOR SO ANY CUSTOM FIELD WILL BE UNINITIALIZED. IF YOU ADD EXTRA FIELDS (SUCH AS A 'Z' COORDINATES) YOU WILL NEED TO CLEAR THEM DURING RENDER OR TO IGNORE THEM. // IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT; // #endif @@ -667,7 +669,7 @@ get IdxBuffer(): Uint8Array { return this.native.IdxBuffer; } // ImVector VtxBuffer; // Vertex buffer. get VtxBuffer(): Uint8Array { return this.native.VtxBuffer; } - + // [Internal, used while building lists] // ImDrawListFlags Flags; // Flags, you may poke into these to adjust anti-aliasing settings per-primitive. // const ImDrawListSharedData* _Data; // Pointer to shared draw data (you can use ImGui::GetDrawListSharedData() to get the one from current ImGui context) @@ -681,7 +683,7 @@ // int _ChannelsCurrent; // [Internal] current channel number (0) // int _ChannelsCount; // [Internal] number of active channels (1+) // ImVector _Channels; // [Internal] draw channels for columns API (not resized down so _ChannelsCount may be smaller than _Channels.Size) - + // ImDrawList(const ImDrawListSharedData* shared_data) { _Data = shared_data; _OwnerName = NULL; Clear(); } // ~ImDrawList() { ClearFreeMemory(); } // IMGUI_API void PushClipRect(ImVec2 clip_rect_min, ImVec2 clip_rect_max, bool intersect_with_current_clip_rect = false); // Render-level scissoring. This is passed down to your render function but not used for CPU-side coarse clipping. Prefer using higher-level ImGui::PushClipRect() to affect logic (hit-testing and widget culling) @@ -855,6 +857,8 @@ // float U0, V0, U1, V1; // Texture coordinates } +export { ImFontAtlasFlags } from "./bind-imgui"; + // Load and rasterize multiple TTF/OTF fonts into a same texture. // Sharing a texture for multiple fonts allows us to reduce the number of draw calls during rendering. // We also add custom graphic data into the texture that serves for ImGui. @@ -879,10 +883,10 @@ // IMGUI_API void ClearInputData(); // Clear the input TTF data (inc sizes, glyph ranges) // IMGUI_API void ClearFonts(); // Clear the ImGui-side font data (glyphs storage, UV coordinates) // IMGUI_API void Clear(); // Clear all - + // Build atlas, retrieve pixel data. // User is in charge of copying the pixels into graphics memory (e.g. create a texture with your engine). Then store your texture handle with SetTexID(). - // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). + // RGBA32 format is provided for convenience and compatibility, but note that unless you use CustomRect to draw color data, the RGB pixels emitted from Fonts will all be white (~75% of waste). // Pitch = Width * BytesPerPixels // IMGUI_API bool Build(); // Build pixels data. This is called automatically for you by the GetTexData*** functions. // IMGUI_API void GetTexDataAsAlpha8(unsigned char** out_pixels, int* out_width, int* out_height, int* out_bytes_per_pixel = NULL); // 1 byte per-pixel @@ -1021,44 +1025,45 @@ // a script version of bind.ImGuiStyle with matching interface class script_ImGuiStyle implements bind.interface_ImGuiStyle { - Alpha: number = 1.0; // Global alpha applies to everything in ImGui - private WindowPadding: ImVec2 = new ImVec2(8,8); // Padding within a window + Alpha: number = 1.0; + private WindowPadding: ImVec2 = new ImVec2(8,8); getWindowPadding(): bind.interface_ImVec2 { return this.WindowPadding; } - WindowRounding: number = 7.0; // Radius of window corners rounding. Set to 0.0f to have rectangular windows - WindowBorderSize: number = 0.0; // Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private WindowMinSize: ImVec2 = new ImVec2(32,32); // Minimum window size + WindowRounding: number = 7.0; + WindowBorderSize: number = 0.0; + private WindowMinSize: ImVec2 = new ImVec2(32,32); getWindowMinSize(): bind.interface_ImVec2 { return this.WindowMinSize; } - private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); // Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered. + private WindowTitleAlign: ImVec2 = new ImVec2(0.0,0.5); getWindowTitleAlign(): bind.interface_ImVec2 { return this.WindowTitleAlign; } - ChildRounding: number = 0.0; // Radius of child window corners rounding. Set to 0.0f to have rectangular windows. - ChildBorderSize: number = 1.0; // Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - PopupRounding: number = 0.0; // Radius of popup window corners rounding. - PopupBorderSize: number = 1.0; // Thickness of border around popup windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private FramePadding: ImVec2 = new ImVec2(4,3); // Padding within a framed rectangle (used by most widgets) + ChildRounding: number = 0.0; + ChildBorderSize: number = 1.0; + PopupRounding: number = 0.0; + PopupBorderSize: number = 1.0; + private FramePadding: ImVec2 = new ImVec2(4,3); getFramePadding(): bind.interface_ImVec2 { return this.FramePadding; } - FrameRounding: number = 0.0; // Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets). - FrameBorderSize: number = 0.0; // Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly) - private ItemSpacing: ImVec2 = new ImVec2(8,4); // Horizontal and vertical spacing between widgets/lines + FrameRounding: number = 0.0; + FrameBorderSize: number = 0.0; + private ItemSpacing: ImVec2 = new ImVec2(8,4); getItemSpacing(): bind.interface_ImVec2 { return this.ItemSpacing; } - private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); // Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label) + private ItemInnerSpacing: ImVec2 = new ImVec2(4,4); getItemInnerSpacing(): bind.interface_ImVec2 { return this.ItemInnerSpacing; } - private TouchExtraPadding: ImVec2 = new ImVec2(0,0); // Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much! + private TouchExtraPadding: ImVec2 = new ImVec2(0,0); getTouchExtraPadding(): bind.interface_ImVec2 { return this.TouchExtraPadding; } - IndentSpacing: number = 21.0; // Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2). - ColumnsMinSpacing: number = 6.0; // Minimum horizontal spacing between two columns - ScrollbarSize: number = 16.0; // Width of the vertical scrollbar, Height of the horizontal scrollbar - ScrollbarRounding: number = 9.0; // Radius of grab corners for scrollbar - GrabMinSize: number = 10.0; // Minimum width/height of a grab box for slider/scrollbar. - GrabRounding: number = 0.0; // Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs. - private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); // Alignment of button text when button is larger than text. Defaults to (0.5f,0.5f) for horizontally+vertically centered. + IndentSpacing: number = 21.0; + ColumnsMinSpacing: number = 6.0; + ScrollbarSize: number = 16.0; + ScrollbarRounding: number = 9.0; + GrabMinSize: number = 10.0; + GrabRounding: number = 0.0; + private ButtonTextAlign: ImVec2 = new ImVec2(0.5,0.5); getButtonTextAlign(): bind.interface_ImVec2 { return this.ButtonTextAlign; } - private DisplayWindowPadding: ImVec2 = new ImVec2(22,22);// Window positions are clamped to be visible within the display area by at least this amount. Only covers regular windows. + private DisplayWindowPadding: ImVec2 = new ImVec2(22,22); getDisplayWindowPadding(): bind.interface_ImVec2 { return this.DisplayWindowPadding; } - private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4);// If you cannot see the edge of your screen (e.g. on a TV) increase the safe area padding. Covers popups/tooltips as well regular windows. + private DisplaySafeAreaPadding: ImVec2 = new ImVec2(4,4); getDisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.DisplaySafeAreaPadding; } - AntiAliasedLines: boolean = true; // Enable anti-aliasing on lines/borders. Disable if you are really tight on CPU/GPU. - AntiAliasedFill: boolean = true; // Enable anti-aliasing on filled shapes (rounded rectangles, circles, etc.) - CurveTessellationTol: number = 1.25; // Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality. + MouseCursorScale: number = 1; + AntiAliasedLines: boolean = true; + AntiAliasedFill: boolean = true; + CurveTessellationTol: number = 1.25; private Colors: ImVec4[] = []; getColorsAt(index: number): bind.interface_ImVec4 { return this.Colors[index]; } setColorsAt(index: number, color: Readonly): boolean { this.Colors[index].Copy(color); return true; } @@ -1116,6 +1121,7 @@ get ButtonTextAlign(): bind.interface_ImVec2 { return this.internal.getButtonTextAlign(); } get DisplayWindowPadding(): bind.interface_ImVec2 { return this.internal.getDisplayWindowPadding(); } get DisplaySafeAreaPadding(): bind.interface_ImVec2 { return this.internal.getDisplaySafeAreaPadding(); } + get MouseCursorScale(): number { return this.internal.MouseCursorScale; } set MouseCursorScale(value: number) { this.internal.MouseCursorScale = value; } get AntiAliasedLines(): boolean { return this.internal.AntiAliasedLines; } set AntiAliasedLines(value: boolean) { this.internal.AntiAliasedLines = value; } get AntiAliasedFill(): boolean { return this.internal.AntiAliasedFill; } set AntiAliasedFill(value: boolean) { this.internal.AntiAliasedFill = value; } get CurveTessellationTol(): number { return this.internal.CurveTessellationTol; } set CurveTessellationTol(value: number) { this.internal.CurveTessellationTol = value; } @@ -1155,6 +1161,7 @@ this.ButtonTextAlign.Copy(this.ButtonTextAlign); this.DisplayWindowPadding.Copy(this.DisplayWindowPadding); this.DisplaySafeAreaPadding.Copy(this.DisplaySafeAreaPadding); + this.MouseCursorScale = other.MouseCursorScale; this.AntiAliasedLines = other.AntiAliasedLines; this.AntiAliasedFill = other.AntiAliasedFill; this.CurveTessellationTol = other.CurveTessellationTol; @@ -1187,6 +1194,9 @@ // float IniSavingRate; // = 5.0f // Maximum time between saving positions/sizes to .ini file, in seconds. // const char* IniFilename; // = "imgui.ini" // Path to .ini file. NULL to disable .ini saving. // const char* LogFilename; // = "imgui_log.txt" // Path to .log file (default parameter to ImGui::LogToFile when no file is specified). + // ImGuiNavFlags NavFlags; // = 0 // See ImGuiNavFlags_. Gamepad/keyboard navigation options. + get NavFlags(): bind.ImGuiNavFlags { return this.native.NavFlags; } + set NavFlags(value: bind.ImGuiNavFlags) { this.native.NavFlags = value; } // float MouseDoubleClickTime; // = 0.30f // Time for a double-click, in seconds. // float MouseDoubleClickMaxDist; // = 6.0f // Distance threshold to stay in to validate a double-click, in pixels. // float MouseDragThreshold; // = 6.0f // Distance threshold before considering we are dragging @@ -1267,6 +1277,9 @@ // float MouseWheel; // Mouse wheel: 1 unit scrolls about 5 lines text. public get MouseWheel(): number { return this.native.MouseWheel; } public set MouseWheel(value: number) { this.native.MouseWheel = value; } + // float MouseWheelH; // Mouse wheel (Horizontal). Most users don't have a mouse with an horizontal wheel, may not be filled by all back ends. + public get MouseWheelH(): number { return this.native.MouseWheelH; } + public set MouseWheelH(value: number) { this.native.MouseWheelH = value; } // bool MouseDrawCursor; // Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). get MouseDrawCursor(): boolean { return this.native.MouseDrawCursor; } set MouseDrawCursor(value: boolean) { this.native.MouseDrawCursor = value; } // bool KeyCtrl; // Keyboard modifier pressed: Control @@ -1288,7 +1301,17 @@ } }); // ImWchar InputCharacters[16+1]; // List of characters input (translated by user from keypress+keyboard state). Fill using AddInputCharacter() helper. - + // float NavInputs[ImGuiNavInput_COUNT]; // Gamepad inputs (keyboard keys will be auto-mapped and be written here by ImGui::NewFrame) + public NavInputs: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsAt(Number(key)); + }, + set: (target: number[], key: PropertyKey, value: number): boolean => { + return this.native.setNavInputsAt(Number(key), value); + } + }); + // Functions // IMGUI_API void AddInputCharacter(ImWchar c); // Add new character into InputCharacters[] public AddInputCharacter(c: number): void { this.native.AddInputCharacter(c); } @@ -1299,7 +1322,7 @@ // Output - Retrieve after calling NewFrame() //------------------------------------------------------------------ - // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). + // bool WantCaptureMouse; // When io.WantCaptureMouse is true, do not dispatch mouse input data to your main application. This is set by ImGui when it wants to use your mouse (e.g. unclicked mouse is hovering a window, or a widget is active). get WantCaptureMouse(): boolean { return this.native.WantCaptureMouse; } set WantCaptureMouse(value: boolean) { this.native.WantCaptureMouse = value; } // bool WantCaptureKeyboard; // When io.WantCaptureKeyboard is true, do not dispatch keyboard input data to your main application. This is set by ImGui when it wants to use your keyboard inputs. get WantCaptureKeyboard(): boolean { return this.native.WantCaptureKeyboard; } set WantCaptureKeyboard(value: boolean) { this.native.WantCaptureKeyboard = value; } @@ -1307,6 +1330,10 @@ get WantTextInput(): boolean { return this.native.WantTextInput; } set WantTextInput(value: boolean) { this.native.WantTextInput = value; } // bool WantMoveMouse; // [BETA-NAV] MousePos has been altered, back-end should reposition mouse on next frame. Set only when 'NavMovesMouse=true'. get WantMoveMouse(): boolean { return this.native.WantMoveMouse; } set WantMoveMouse(value: boolean) { this.native.WantMoveMouse = value; } + // bool NavActive; // Directional navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag. + get NavActive(): boolean { return this.native.NavActive; } set NavActive(value: boolean) { this.native.NavActive = value; } + // bool NavVisible; // Directional navigation is visible and allowed (will handle ImGuiKey_NavXXX events). + get NavVisible(): boolean { return this.native.NavVisible; } set NavVisible(value: boolean) { this.native.NavVisible = value; } // float Framerate; // Application framerate estimation, in frame per second. Solely for convenience. Rolling average estimation based on IO.DeltaTime over 120 frames get Framerate(): number { return this.native.Framerate; } // int MetricsAllocs; // Number of active memory allocations @@ -1322,6 +1349,13 @@ // ImVec2 MousePosPrev; // Previous mouse position temporary storage (nb: not for public use, set to MousePos in NewFrame()) // ImVec2 MouseClickedPos[5]; // Position at time of clicking + // public getMouseClickedPosAt(index: number): Readonly; + public MouseClickedPos: Readonly[] = new Proxy([], { + get: (target: Readonly[], key: PropertyKey): number | Readonly => { + if (key === "length") { return 5; } + return this.native.getMouseClickedPosAt(Number(key)); + } + }); // float MouseClickedTime[5]; // Time of last click (used to figure out double-click) // bool MouseClicked[5]; // Mouse button went from !Down to Down // bool MouseDoubleClicked[5]; // Has mouse button been double-clicked? @@ -1345,10 +1379,34 @@ } }); // float KeysDownDurationPrev[512]; // Previous duration the key has been down + // float NavInputsDownDuration[ImGuiNavInput_COUNT]; + public NavInputsDownDuration: number[] = new Proxy([], { + get: (target: number[], key: PropertyKey): number => { + if (key === "length") { return bind.ImGuiNavInput.COUNT; } + return this.native.getNavInputsDownDurationAt(Number(key)); + } + }); + // float NavInputsDownDurationPrev[ImGuiNavInput_COUNT]; // IMGUI_API ImGuiIO(); } +// Context creation and access, if you want to use multiple context, share context between modules (e.g. DLL). +// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. +// All those functions are not reliant on the current context. +// IMGUI_API ImGuiContext* CreateContext(ImFontAtlas* shared_font_atlas = NULL); +export function CreateContext(shared_font_atlas: ImFontAtlas | null = null): bind.ImGuiContext | null { + return bind.CreateContext(); +} +// IMGUI_API void DestroyContext(ImGuiContext* ctx = NULL); // NULL = Destroy current context +export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { + return bind.DestroyContext(ctx); +} +// IMGUI_API ImGuiContext* GetCurrentContext(); +export { GetCurrentContext } from "./bind-imgui"; +// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); +export { SetCurrentContext } from "./bind-imgui"; + // Main // IMGUI_API ImGuiIO& GetIO(); export function GetIO(): ImGuiIO { return new ImGuiIO(bind.GetIO()); } @@ -1374,8 +1432,6 @@ } // IMGUI_API void EndFrame(); // ends the ImGui frame. automatically called by Render(), so most likely don't need to ever call that yourself directly. If you don't need to render you may call EndFrame() but you'll have wasted CPU already. If you don't need to render, better to not create any imgui windows instead! export function EndFrame(): void { bind.EndFrame(); } -// IMGUI_API void Shutdown(); -export function Shutdown(): void { bind.Shutdown(); } // Demo, Debug, Informations // IMGUI_API void ShowDemoWindow(bool* p_open = NULL); // create demo/test window (previously called ShowTestWindow). demonstrate most ImGui features. call this to learn about the library! try to make it always available in your application! @@ -1414,6 +1470,55 @@ export function ShowFontSelector(label: string): void { bind.ShowFontSelector(label); } // IMGUI_API void ShowUserGuide(); // add basic help/info block (not a window): how to manipulate ImGui as a end-user (mouse/keyboard controls). export function ShowUserGuide(): void { bind.ShowUserGuide(); } +// IMGUI_API const char* GetVersion(); +export { GetVersion } from "./bind-imgui"; + +// Styles +// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); +export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsClassic(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsClassic(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsClassic(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); +export function StyleColorsDark(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsDark(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsDark(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsDark(native); + dst.Copy(wrap); + native.delete(); + } +} +// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); +export function StyleColorsLight(dst: ImGuiStyle | null = null): void { + if (dst === null) { + bind.StyleColorsLight(null); + } else if (dst.internal instanceof bind.ImGuiStyle) { + bind.StyleColorsLight(dst.internal); + } else { + const native = new bind.ImGuiStyle(); + const wrap = new ImGuiStyle(native); + wrap.Copy(dst); + bind.StyleColorsLight(native); + dst.Copy(wrap); + native.delete(); + } +} // Window // IMGUI_API bool Begin(const char* name, bool* p_open = NULL, ImGuiWindowFlags flags = 0); // push window to the stack and start appending to it. see .cpp for details. return false when window is collapsed, so you can early out in your code. 'bool* p_open' creates a widget on the upper-right to close the window (which sets your bool to false). @@ -1494,8 +1599,8 @@ // IMGUI_API void SetNextWindowSizeConstraints(const ImVec2& size_min, const ImVec2& size_max, ImGuiSizeConstraintCallback custom_callback = NULL, void* custom_callback_data = NULL); // set next window size limits. use -1,-1 on either X/Y axis to preserve the current size. Use callback to apply non-trivial programmatic constraints. export function SetNextWindowSizeConstraints(size_min: Readonly, size_max: Readonly, custom_callback: ImGuiSizeConstraintCallback | null = null, custom_callback_data: any = null): void { if (custom_callback) { - function _custom_callback(data: bind.ImGuiSizeConstraintCallbackData): void { - const _data: ImGuiSizeConstraintCallbackData = new ImGuiSizeConstraintCallbackData(data); + function _custom_callback(data: bind.ImGuiSizeCallbackData): void { + const _data: ImGuiSizeCallbackData = new ImGuiSizeCallbackData(data); custom_callback ? custom_callback(_data) : 0; _data.delete(); } @@ -1514,8 +1619,10 @@ } // IMGUI_API void SetNextWindowFocus(); // set next window to be focused / front-most. call before Begin() export { SetNextWindowFocus } from "./bind-imgui"; +// IMGUI_API void SetNextWindowBgAlpha(float alpha); // set next window background color alpha. helper to easily modify ImGuiCol_WindowBg/ChildBg/PopupBg. +export { SetNextWindowBgAlpha } from "./bind-imgui"; // IMGUI_API void SetWindowPos(const ImVec2& pos, ImGuiCond cond = 0); // (not recommended) set current window position - call within Begin()/End(). prefer using SetNextWindowPos(), as this may incur tearing and side-effects. -// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. +// IMGUI_API void SetWindowSize(const ImVec2& size, ImGuiCond cond = 0); // (not recommended) set current window size - call within Begin()/End(). set to ImVec2(0,0) to force an auto-fit. prefer using SetNextWindowSize(), as this may incur tearing and minor side-effects. // IMGUI_API void SetWindowCollapsed(bool collapsed, ImGuiCond cond = 0); // (not recommended) set current window collapsed state. prefer using SetNextWindowCollapsed(). // IMGUI_API void SetWindowFocus(); // (not recommended) set current window to be focused / front-most. prefer using SetNextWindowFocus(). // IMGUI_API void SetWindowPos(const char* name, const ImVec2& pos, ImGuiCond cond = 0); // set named window position. @@ -1793,8 +1900,15 @@ } } // IMGUI_API bool CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value); -export function CheckboxFlags(label: string, flags: bind.ImScalar, flags_value: number): boolean { - return bind.CheckboxFlags(label, flags, flags_value); +export function CheckboxFlags(label: string, flags: bind.ImAccess | bind.ImScalar, flags_value: number): boolean { + if (Array.isArray(flags)) { + return bind.CheckboxFlags(label, flags, flags_value); + } else { + const ref_flags: bind.ImScalar = [ flags() ]; + const ret = bind.CheckboxFlags(label, ref_flags, flags_value); + flags(ref_flags[0]); + return ret; + } } // IMGUI_API bool RadioButton(const char* label, bool active); // IMGUI_API bool RadioButton(const char* label, int* v, int v_button); @@ -1842,7 +1956,7 @@ } // Widgets: Combo Box -// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. +// The new BeginCombo()/EndCombo() api allows you to manage your contents and selection state however you want it. // The old Combo() api are helpers over BeginCombo()/EndCombo() which are kept available for convenience purpose. // IMGUI_API bool BeginCombo(const char* label, const char* preview_value, ImGuiComboFlags flags = 0); export function BeginCombo(label: string, preview_value: string | null, flags: bind.ImGuiComboFlags = 0): boolean { @@ -2473,53 +2587,6 @@ bind.PopClipRect(); } -// Styles -// IMGUI_API void StyleColorsClassic(ImGuiStyle* dst = NULL); -export function StyleColorsClassic(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsClassic(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsClassic(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsClassic(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsDark(ImGuiStyle* dst = NULL); -export function StyleColorsDark(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsDark(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsDark(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsDark(native); - dst.Copy(wrap); - native.delete(); - } -} -// IMGUI_API void StyleColorsLight(ImGuiStyle* dst = NULL); -export function StyleColorsLight(dst: ImGuiStyle | null = null): void { - if (dst === null) { - bind.StyleColorsLight(null); - } else if (dst.internal instanceof bind.ImGuiStyle) { - bind.StyleColorsLight(dst.internal); - } else { - const native = new bind.ImGuiStyle(); - const wrap = new ImGuiStyle(native); - wrap.Copy(dst); - bind.StyleColorsLight(native); - dst.Copy(wrap); - native.delete(); - } -} - // Focus // (FIXME: Those functions will be reworked after we merge the navigation branch + have a pass at focusing/tabbing features.) // (Prefer using "SetItemDefaultFocus()" over "if (IsWindowAppearing()) SetScrollHere()" when applicable, to make your code more forward compatible when navigation branch is merged) @@ -2537,6 +2604,8 @@ } // IMGUI_API bool IsItemActive(); // is the last item active? (e.g. button being held, text field being edited- items that don't interact will always return false) export { IsItemActive } from "./bind-imgui"; +// IMGUI_API bool IsItemFocused(); // is the last item focused for keyboard/gamepad navigation? +export { IsItemFocused } from "./bind-imgui"; // IMGUI_API bool IsItemClicked(int mouse_button = 0); // is the last item clicked? (e.g. button/node just clicked on) export function IsItemClicked(mouse_button: number = 0): boolean { return bind.IsItemClicked(mouse_button); @@ -2547,6 +2616,8 @@ export { IsAnyItemHovered } from "./bind-imgui"; // IMGUI_API bool IsAnyItemActive(); export { IsAnyItemActive } from "./bind-imgui"; +// IMGUI_API bool IsAnyItemFocused(); +export { IsAnyItemFocused } from "./bind-imgui"; // IMGUI_API ImVec2 GetItemRectMin(); // get bounding rectangle of last item, in screen space export function GetItemRectMin(out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.GetItemRectMin(out); @@ -2569,10 +2640,6 @@ export function IsWindowHovered(flags: bind.ImGuiHoveredFlags = 0): boolean { return bind.IsWindowHovered(flags); } -// IMGUI_API bool IsAnyWindowFocused(); -export { IsAnyWindowFocused } from "./bind-imgui"; -// IMGUI_API bool IsAnyWindowHovered(); // is mouse hovering any visible window -export { IsAnyWindowHovered } from "./bind-imgui"; // IMGUI_API bool IsRectVisible(const ImVec2& size); // test if rectangle (of given size, starting from cursor position) is visible / not clipped. // IMGUI_API bool IsRectVisible(const ImVec2& rect_min, const ImVec2& rect_max); // test if rectangle (in screen space) is visible / not clipped. to perform coarse clipping on user's side. export function IsRectVisible(size_or_rect_min: Readonly, rect_max?: Readonly): boolean { @@ -2592,10 +2659,6 @@ } // IMGUI_API const char* GetStyleColorName(ImGuiCol idx); export { GetStyleColorName } from "./bind-imgui"; -// IMGUI_API ImVec2 CalcItemRectClosestPoint(const ImVec2& pos, bool on_edge = false, float outward = +0.0f); // utility to find the closest point the last item bounding rectangle edge. useful to visually link items -export function CalcItemRectClosestPoint(pos: Readonly, on_edge: boolean = false, outward: number = +0.0, out: bind.interface_ImVec2 = new ImVec2()): typeof out { - return bind.CalcItemRectClosestPoint(pos, on_edge, outward, out); -} // IMGUI_API ImVec2 CalcTextSize(const char* text, const char* text_end = NULL, bool hide_text_after_double_hash = false, float wrap_width = -1.0f); export function CalcTextSize(text: string, text_end: string | null = null, hide_text_after_double_hash: boolean = false, wrap_width: number = -1, out: bind.interface_ImVec2 = new ImVec2()): typeof out { return bind.CalcTextSize(text, text_end, hide_text_after_double_hash, wrap_width, out); @@ -2712,24 +2775,3 @@ export { GetClipboardText } from "./bind-imgui"; // IMGUI_API void SetClipboardText(const char* text); export { SetClipboardText } from "./bind-imgui"; - -// Internal context access - if you want to use multiple context, share context between modules (e.g. DLL). There is a default context created and active by default. -// All contexts share a same ImFontAtlas by default. If you want different font atlas, you can new() them and overwrite the GetIO().Fonts variable of an ImGui context. -// IMGUI_API const char* GetVersion(); -export { GetVersion } from "./bind-imgui"; -// IMGUI_API ImGuiContext* CreateContext(void* (*malloc_fn)(size_t) = NULL, void (*free_fn)(void*) = NULL); -// export function CreateContext(malloc_fn: ((sz: number) => any) | null = null, free_fn: ((ptr: any) => void) | null = null): bind.ImGuiContext | null { -// return bind.CreateContext(malloc_fn, free_fn); -// } -export function CreateContext(): bind.ImGuiContext | null { - return bind.CreateContext(); -} -// IMGUI_API void DestroyContext(ImGuiContext* ctx); -// export { DestroyContext } from "./bind-imgui"; -export function DestroyContext(ctx: bind.ImGuiContext | null = null): void { - return bind.DestroyContext(ctx); -} -// IMGUI_API ImGuiContext* GetCurrentContext(); -export { GetCurrentContext } from "./bind-imgui"; -// IMGUI_API void SetCurrentContext(ImGuiContext* ctx); -export { SetCurrentContext } from "./bind-imgui"; diff --git a/imgui_demo.js b/imgui_demo.js index 31a08cd..dc5c8d2 100644 --- a/imgui_demo.js +++ b/imgui_demo.js @@ -1,5 +1,5 @@ "use strict"; -// dear imgui, v1.53 +// dear imgui, v1.60 WIP // (demo code) Object.defineProperty(exports, "__esModule", { value: true }); // Message to the person tempted to delete this file when integrating ImGui into their code base: @@ -107,7 +107,7 @@ ImGui.TextDisabled("(?)"); if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted(desc); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -183,7 +183,7 @@ } if (show_app_about.value) { ImGui.Begin("About Dear ImGui", (value = show_app_about.value) => show_app_about.value = value, 64 /* AlwaysAutoResize */); - ImGui.Text(`dear imgui, ${ImGui.GetVersion()}`); + ImGui.Text(`Dear ImGui, ${ImGui.GetVersion()}`); ImGui.Separator(); ImGui.Text("By Omar Cornut and all dear imgui contributors."); ImGui.Text("Dear ImGui is licensed under the MIT License, see LICENSE for more information."); @@ -196,6 +196,7 @@ /* static */ const no_resize = STATIC("no_resize", false); /* static */ const no_collapse = STATIC("no_collapse", false); /* static */ const no_close = STATIC("no_close", false); + /* static */ const no_nav = STATIC("no_nav", false); // Demonstrate the various window flags. Typically you would just use the default. let window_flags = 0; if (no_titlebar.value) @@ -210,6 +211,8 @@ window_flags |= 2 /* NoResize */; if (no_collapse.value) window_flags |= 32 /* NoCollapse */; + if (no_nav.value) + window_flags |= 786432 /* NoNav */; if (no_close.value) p_open = null; // Don't pass our bool* to Begin ImGui.SetNextWindowSize(new imgui_6.ImVec2(550, 680), 4 /* FirstUseEver */); @@ -267,6 +270,8 @@ ImGui.SameLine(300); ImGui.Checkbox("No collapse", (value = no_collapse.value) => no_collapse.value = value); ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); + ImGui.SameLine(150); + ImGui.Checkbox("No nav", (value = no_nav.value) => no_nav.value = value); if (ImGui.TreeNode("Style")) { /*ImGui.*/ ShowStyleEditor(); ImGui.TreePop(); @@ -401,8 +406,7 @@ if (ImGui.TreeNode(i.toString(), `Child ${i}`)) { ImGui.Text("blah blah"); ImGui.SameLine(); - if (ImGui.SmallButton("print")) - console.log(`Child ${i} pressed`); + if (ImGui.SmallButton("button")) { } ImGui.TreePop(); } ImGui.TreePop(); @@ -416,7 +420,7 @@ ImGui.Unindent(ImGui.GetTreeNodeToLabelSpacing()); /* static */ const selection_mask = STATIC("selection_mask", (1 << 2)); // Dumb representation of what may be user-side selection state. You may carry selection state inside or outside your objects in whatever format you see fit. let node_clicked = -1; // Temporary storage of what node we have clicked to process selection at the end of the loop. May be a pointer to your own node type, etc. - ImGui.PushStyleVar(14 /* IndentSpacing */, ImGui.GetFontSize() * 3); // Increase spacing to differentiate leaves from expanded contents. + ImGui.PushStyleVar(15 /* IndentSpacing */, ImGui.GetFontSize() * 3); // Increase spacing to differentiate leaves from expanded contents. for (let i = 0; i < 6; i++) { // Disable the default open on single-click behavior and pass in Selected flag according to our selection state. let node_flags = 128 /* OpenOnArrow */ | 64 /* OpenOnDoubleClick */ | ((selection_mask.value & (1 << i)) ? 1 /* Selected */ : 0); @@ -573,22 +577,50 @@ ImGui.SameLine(); } ImGui.NewLine(); - ImGui.Text(`Pressed ${pressed_count} times.`); + ImGui.Text(`Pressed ${pressed_count.value} times.`); ImGui.TreePop(); } if (ImGui.TreeNode("Selectables")) { + // Selectable() has 2 overloads: + // - The one taking "bool selected" as a read-only selection information. When Selectable() has been clicked is returns true and you can alter selection state accordingly. + // - The one taking "bool* p_selected" as a read-write selection information (convenient in some cases) + // The earlier is more flexible, as in real application your selection may be stored in a different manner (in flags within objects, as an external list, etc). if (ImGui.TreeNode("Basic")) { - /* static */ const selected = STATIC("selected#672", [false, true, false, false]); - ImGui.Selectable("1. I am selectable", (value = selected.value[0]) => selected.value[0] = value); - ImGui.Selectable("2. I am selectable", (value = selected.value[1]) => selected.value[1] = value); + /* static */ const selection = STATIC("selection#695", [false, true, false, false, false]); + ImGui.Selectable("1. I am selectable", (value = selection.value[0]) => selection.value[0] = value); + ImGui.Selectable("2. I am selectable", (value = selection.value[1]) => selection.value[1] = value); ImGui.Text("3. I am not selectable"); - ImGui.Selectable("4. I am selectable", (value = selected.value[2]) => selected.value[2] = value); - if (ImGui.Selectable("5. I am double clickable", selected.value[3], 4 /* AllowDoubleClick */)) + ImGui.Selectable("4. I am selectable", (value = selection.value[3]) => selection.value[2] = value); + if (ImGui.Selectable("5. I am double clickable", selection.value[4], 4 /* AllowDoubleClick */)) if (ImGui.IsMouseDoubleClicked(0)) - selected.value[3] = !selected.value[3]; + selection.value[4] = !selection.value[4]; ImGui.TreePop(); } - if (ImGui.TreeNode("Rendering more text into the same block")) { + if (ImGui.TreeNode("Selection State: Single Selection")) { + /* static */ const selected = STATIC("selected#707", -1); + for (let n = 0; n < 5; n++) { + const buf = `Object ${n}`; + if (ImGui.Selectable(buf, selected.value === n)) + selected.value = n; + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Selection State: Multiple Selection")) { + ShowHelpMarker("Hold CTRL and click to select multiple items."); + /* static */ const selection = STATIC("selection#720", [false, false, false, false, false]); + for (let n = 0; n < 5; n++) { + const buf = `Object ${n}`; + if (ImGui.Selectable(buf, selection.value[n])) { + if (!ImGui.GetIO().KeyCtrl) + // memset(selection, 0, sizeof(selection)); + selection.value.fill(false); + selection.value[n] = !selection.value[n]; + } + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Rendering more text into the same line")) { + // Using the Selectable() override that takes "bool* p_selected" parameter and toggle your booleans automatically. /* static */ const selected = STATIC("selected#687", [false, false, false]); ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); @@ -672,7 +704,7 @@ "*/\n\n" + "label:\n" + "\tlock cmpxchg8b eax\n")); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); ImGui.Checkbox("Read-only", (value = read_only.value) => read_only.value = value); ImGui.PopStyleVar(); ImGui.InputTextMultiline("##source", text.value, imgui_3.IM_ARRAYSIZE(text.value), new imgui_6.ImVec2(-1.0, ImGui.GetTextLineHeight() * 16), 1024 /* AllowTabInput */ | (read_only.value ? 16384 /* ReadOnly */ : 0)); @@ -740,18 +772,18 @@ } if (ImGui.TreeNode("Color/Picker Widgets")) { /* static */ const color = STATIC("color#863", new imgui_9.ImColor(114, 144, 154, 200).toImVec4()); - /* static */ const hdr = STATIC("hdr", false); /* static */ const alpha_preview = STATIC("alpha_preview", true); /* static */ const alpha_half_preview = STATIC("alpha_half_preview", false); /* static */ const options_menu = STATIC("options_menu", true); - ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); - ImGui.SameLine(); - ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); + /* static */ const hdr = STATIC("hdr", false); ImGui.Checkbox("With Alpha Preview", (value = alpha_preview.value) => alpha_preview.value = value); ImGui.Checkbox("With Half Alpha Preview", (value = alpha_half_preview.value) => alpha_half_preview.value = value); ImGui.Checkbox("With Options Menu", (value = options_menu.value) => options_menu.value = value); ImGui.SameLine(); ShowHelpMarker("Right-click on the individual color widget to show options."); + ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); + ImGui.SameLine(); + ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); const misc_flags = (hdr.value ? 4096 /* HDR */ : 0) | (alpha_half_preview.value ? 2048 /* AlphaPreviewHalf */ : (alpha_preview.value ? 1024 /* AlphaPreview */ : 0)) | (options_menu.value ? 0 : 8 /* NoOptions */); ImGui.Text("Color widget:"); ImGui.SameLine(); @@ -912,7 +944,7 @@ } if (ImGui.TreeNode("Vertical Sliders")) { const spacing = 4; - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(spacing, spacing)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(spacing, spacing)); /* static */ const int_value = STATIC("int_value", 0); ImGui.VSliderInt("##int", new imgui_6.ImVec2(18, 160), (value = int_value.value) => int_value.value = value, 0, 5); ImGui.SameLine(); @@ -958,7 +990,7 @@ if (i > 0) ImGui.SameLine(); ImGui.PushID(i); - ImGui.PushStyleVar(15 /* GrabMinSize */, 40); + ImGui.PushStyleVar(18 /* GrabMinSize */, 40); ImGui.VSliderFloat("##v", new imgui_6.ImVec2(40, 160), (value = values.value[i]) => values.value[i] = value, 0.0, 1.0, "%.2f\nsec"); ImGui.PopStyleVar(); ImGui.PopID(); @@ -971,36 +1003,49 @@ if (ImGui.CollapsingHeader("Layout")) { if (ImGui.TreeNode("Child regions")) { /* static */ const disable_mouse_wheel = STATIC("disable_mouse_wheel", false); + /* static */ const disable_menu = STATIC("disable_menu", false); ImGui.Checkbox("Disable Mouse Wheel", (value = disable_mouse_wheel.value) => disable_mouse_wheel.value = value); - ImGui.Text("Without border"); + ImGui.Checkbox("Disable Menu", (value = disable_menu.value) => disable_menu.value = value); /* static */ const line = STATIC("line", 50); let goto_line = ImGui.Button("Goto"); ImGui.SameLine(); ImGui.PushItemWidth(100); goto_line = ImGui.InputInt("##Line", (value = line.value) => line.value = value, 0, 0, 32 /* EnterReturnsTrue */) || goto_line; ImGui.PopItemWidth(); - ImGui.BeginChild("Sub1", new imgui_6.ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, 2048 /* HorizontalScrollbar */ | (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); - for (let i = 0; i < 100; i++) { - ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); - if (goto_line && line.value === i) + // Child 1: no border, enable horizontal scrollbar + { + ImGui.BeginChild("Child1", new imgui_6.ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, 2048 /* HorizontalScrollbar */ | (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); + for (let i = 0; i < 100; i++) { + ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); + if (goto_line && line.value === i) + ImGui.SetScrollHere(); + } + if (goto_line && line.value >= 100) ImGui.SetScrollHere(); + ImGui.EndChild(); } - if (goto_line && line.value >= 100) - ImGui.SetScrollHere(); - ImGui.EndChild(); ImGui.SameLine(); - ImGui.PushStyleVar(5 /* ChildRounding */, 5.0); - ImGui.BeginChild("Sub2", new imgui_6.ImVec2(0, 300), true, (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0)); - ImGui.Text("With border"); - ImGui.Columns(2); - for (let i = 0; i < 100; i++) { - if (i === 50) - ImGui.NextColumn(); - const buf = `${("00000000" + (i * 5731).toString(16)).substr(-8)}`; - ImGui.Button(buf, new imgui_6.ImVec2(-1.0, 0.0)); + // Child 2: rounded border + { + ImGui.PushStyleVar(6 /* ChildRounding */, 5.0); + ImGui.BeginChild("Child2", new imgui_6.ImVec2(0, 300), true, (disable_mouse_wheel.value ? 16 /* NoScrollWithMouse */ : 0) | (disable_menu ? 0 : 1024 /* MenuBar */)); + if (!disable_menu && ImGui.BeginMenuBar()) { + if (ImGui.BeginMenu("Menu")) { + ShowExampleMenuFile(); + ImGui.EndMenu(); + } + ImGui.EndMenuBar(); + } + ImGui.Columns(2); + for (let i = 0; i < 100; i++) { + if (i === 50) + ImGui.NextColumn(); + const buf = `${("00000000" + (i * 5731).toString(16)).substr(-8)}`; + ImGui.Button(buf, new imgui_6.ImVec2(-1.0, 0.0)); + } + ImGui.EndChild(); + ImGui.PopStyleVar(); } - ImGui.EndChild(); - ImGui.PopStyleVar(); ImGui.TreePop(); } if (ImGui.TreeNode("Widgets Width")) { @@ -1265,8 +1310,8 @@ ImGui.TextWrapped("You may want to explicitly specify content width by calling SetNextWindowContentWidth() before Begin()."); /* static */ const lines = STATIC("lines#1432", 7); ImGui.SliderInt("Lines", (value = lines.value) => lines.value = value, 1, 15); - ImGui.PushStyleVar(10 /* FrameRounding */, 3.0); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(2.0, 1.0)); + ImGui.PushStyleVar(11 /* FrameRounding */, 3.0); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(2.0, 1.0)); ImGui.BeginChild("scrolling", new imgui_6.ImVec2(0, ImGui.GetFrameHeightWithSpacing() * 7 + 30), true, 2048 /* HorizontalScrollbar */); for (let line = 0; line < lines.value; line++) { // Display random stuff (for the sake of this trivial demo we are using basic Button+SameLine. If you want to create your own time line for a real application you may be better off @@ -1425,12 +1470,13 @@ ///* static */ const dummy_i: number = 0; //ImGui.Combo("Combo", &dummy_i, "Delete\0Delete harder\0"); /* static */ const dont_ask_me_next_time = STATIC("dont_ask_me_next_time", false); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); ImGui.Checkbox("Don't ask me next time", (value = dont_ask_me_next_time.value) => dont_ask_me_next_time.value = value); ImGui.PopStyleVar(); if (ImGui.Button("OK", new imgui_6.ImVec2(120, 0))) { ImGui.CloseCurrentPopup(); } + ImGui.SetItemDefaultFocus(); ImGui.SameLine(); if (ImGui.Button("Cancel", new imgui_6.ImVec2(120, 0))) { ImGui.CloseCurrentPopup(); @@ -1448,7 +1494,7 @@ if (ImGui.Button("Add another modal..")) ImGui.OpenPopup("Stacked 2"); if (ImGui.BeginPopupModal("Stacked 2")) { - ImGui.Text("Hello from Stacked The Second"); + ImGui.Text("Hello from Stacked The Second!"); if (ImGui.Button("Close")) ImGui.CloseCurrentPopup(); ImGui.EndPopup(); @@ -1670,16 +1716,22 @@ if (filter.value.PassFilter(lines[i])) ImGui.BulletText(lines[i]); } - if (ImGui.CollapsingHeader("Inputs & Focus")) { + if (ImGui.CollapsingHeader("Inputs, Navigation & Focus")) { const io = ImGui.GetIO(); - ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); - ImGui.SameLine(); - ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); ImGui.Text(`WantCaptureMouse: ${io.WantCaptureMouse}`); ImGui.Text(`WantCaptureKeyboard: ${io.WantCaptureKeyboard}`); ImGui.Text(`WantTextInput: ${io.WantTextInput}`); ImGui.Text(`WantMoveMouse: ${io.WantMoveMouse}`); - if (ImGui.TreeNode("Keyboard & Mouse State")) { + ImGui.Text(`NavActive: ${io.NavActive}, NavVisible: ${io.NavVisible}`); + ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); + ImGui.SameLine(); + ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + ImGui.CheckboxFlags("io.NavFlags: EnableGamepad", (value = io.NavFlags) => io.NavFlags = value, 2 /* EnableGamepad */); + ImGui.CheckboxFlags("io.NavFlags: EnableKeyboard", (value = io.NavFlags) => io.NavFlags = value, 1 /* EnableKeyboard */); + ImGui.CheckboxFlags("io.NavFlags: MoveMouse", (value = io.NavFlags) => io.NavFlags = value, 4 /* MoveMouse */); + ImGui.SameLine(); + ShowHelpMarker("Request ImGui to move your move cursor when using gamepad/keyboard navigation. NewFrame() will change io.MousePos and set the io.WantMoveMouse flag, your backend will need to apply the new mouse position."); + if (ImGui.TreeNode("Keyboard, Mouse & Navigation State")) { if (ImGui.IsMousePosValid()) ImGui.Text(`Mouse pos: (${io.MousePos.x}, ${io.MousePos.x})`); else @@ -1728,6 +1780,24 @@ ImGui.Text(i.toString()); } ImGui.Text(`Keys mods: ${io.KeyCtrl ? "CTRL " : ""}${io.KeyShift ? "SHIFT " : ""}${io.KeyAlt ? "ALT " : ""}${io.KeySuper ? "SUPER " : ""}`); + ImGui.Text("NavInputs down:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputs[i] > 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}] ${io.NavInputs[i].toFixed(2)}`); + } + ImGui.Text("NavInputs pressed:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputsDownDuration[i] == 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}]`); + } + ImGui.Text("NavInputs duration:"); + for (let i = 0; i < imgui_3.IM_ARRAYSIZE(io.NavInputs); i++) + if (io.NavInputsDownDuration[i] >= 0.0) { + ImGui.SameLine(); + ImGui.Text(`[${i}] ${io.NavInputsDownDuration[i].toFixed(2)}`); + } ImGui.Button("Hovering me sets the\nkeyboard capture flag"); if (ImGui.IsItemHovered()) ImGui.CaptureKeyboardFromApp(true); @@ -1779,7 +1849,21 @@ ImGui.Text(`Item with focus: ${has_focus}`); else ImGui.Text("Item with focus: "); - ImGui.TextWrapped("Cursor & selection are preserved when refocusing last used item in code."); + // Use >= 0 parameter to SetKeyboardFocusHere() to focus an upcoming item + /* static */ const f3 = STATIC("f3", [0.0, 0.0, 0.0]); + let focus_ahead = -1; + if (ImGui.Button("Focus on X")) + focus_ahead = 0; + ImGui.SameLine(); + if (ImGui.Button("Focus on Y")) + focus_ahead = 1; + ImGui.SameLine(); + if (ImGui.Button("Focus on Z")) + focus_ahead = 2; + if (focus_ahead != -1) + ImGui.SetKeyboardFocusHere(focus_ahead); + ImGui.SliderFloat3("Float3", f3.value, 0.0, 1.0); + ImGui.TextWrapped("NB: Cursor & selection are preserved when refocusing last used item in code."); ImGui.TreePop(); } if (ImGui.TreeNode("Focused & Hovered Test")) { @@ -1791,21 +1875,23 @@ ImGui.BulletText(`IsWindowFocused() = ${ImGui.IsWindowFocused()}\n` + `IsWindowFocused(_ChildWindows) = ${ImGui.IsWindowFocused(1 /* ChildWindows */)}\n` + `IsWindowFocused(_ChildWindows|_RootWindow) = ${ImGui.IsWindowFocused(1 /* ChildWindows */ | 2 /* RootWindow */)}\n` + - `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(2 /* RootWindow */)}\n`); + `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(2 /* RootWindow */)}\n` + + `IsWindowFocused(_AnyWindow) = ${ImGui.IsWindowFocused(4 /* AnyWindow */)}\n`); // Testing IsWindowHovered() function with its various flags (note that the flags can be combined) ImGui.BulletText(`IsWindowHovered() = ${ImGui.IsWindowHovered()}\n` + - `IsWindowHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsWindowHovered(4 /* AllowWhenBlockedByPopup */)}\n` + - `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(16 /* AllowWhenBlockedByActiveItem */)}\n` + + `IsWindowHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsWindowHovered(8 /* AllowWhenBlockedByPopup */)}\n` + + `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(32 /* AllowWhenBlockedByActiveItem */)}\n` + `IsWindowHovered(_ChildWindows) = ${ImGui.IsWindowHovered(1 /* ChildWindows */)}\n` + `IsWindowHovered(_ChildWindows|_RootWindow) = ${ImGui.IsWindowHovered(1 /* ChildWindows */ | 2 /* RootWindow */)}\n` + - `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(2 /* RootWindow */)}\n"`); + `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(2 /* RootWindow */)}\n"` + + `IsWindowHovered(_AnyWindow) = ${ImGui.IsWindowHovered(4 /* AnyWindow */)}\n"`); // Testing IsItemHovered() function (because BulletText is an item itself and that would affect the output of IsItemHovered, we pass all lines in a single items to shorten the code) ImGui.Button("ITEM"); ImGui.BulletText(`IsItemHovered() = ${ImGui.IsItemHovered()}\n` + - `IsItemHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsItemHovered(4 /* AllowWhenBlockedByPopup */)}\n` + - `IsItemHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsItemHovered(16 /* AllowWhenBlockedByActiveItem */)}\n` + - `IsItemHovered(_AllowWhenOverlapped) = ${ImGui.IsItemHovered(32 /* AllowWhenOverlapped */)}\n` + - `IsItemhovered(_RectOnly) = ${ImGui.IsItemHovered(52 /* RectOnly */)}\n`); + `IsItemHovered(_AllowWhenBlockedByPopup) = ${ImGui.IsItemHovered(8 /* AllowWhenBlockedByPopup */)}\n` + + `IsItemHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsItemHovered(32 /* AllowWhenBlockedByActiveItem */)}\n` + + `IsItemHovered(_AllowWhenOverlapped) = ${ImGui.IsItemHovered(64 /* AllowWhenOverlapped */)}\n` + + `IsItemhovered(_RectOnly) = ${ImGui.IsItemHovered(104 /* RectOnly */)}\n`); ImGui.BeginChild("child", new imgui_6.ImVec2(0, 50), true); ImGui.Text("This is another child window for testing IsWindowHovered() flags."); ImGui.EndChild(); @@ -1822,7 +1908,9 @@ // Draw a line between the button and the mouse cursor const draw_list = ImGui.GetWindowDrawList(); draw_list.PushClipRectFullScreen(); - draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[21 /* Button */]), 4.0); + // draw_list->AddLine(io.MouseClickedPos[0], io.MousePos, ImGui::GetColorU32(ImGuiCol_Button), 4.0f); + draw_list.AddLine(io.MouseClickedPos[0], io.MousePos, ImGui.GetColorU32(21 /* Button */), 4.0); + // draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); draw_list.PopClipRect(); // Drag operations gets "unlocked" when the mouse has moved past a certain threshold (the default threshold is stored in io.MouseDragThreshold) // You can request a lower or higher threshold using the second parameter of IsMouseDragging() and GetMouseDragDelta() @@ -1845,7 +1933,7 @@ const label = `Mouse cursor ${i}: ${mouse_cursors_names[i]}`; ImGui.Bullet(); ImGui.Selectable(label, false); - if (ImGui.IsItemHovered()) + if (ImGui.IsItemHovered() || ImGui.IsItemFocused()) ImGui.SetMouseCursor(i); } ImGui.TreePop(); @@ -1857,7 +1945,7 @@ // Demo helper function to select among default colors. See ShowStyleEditor() for more advanced options. // Here we use the simplified Combo() api that packs items into a single literal string. Useful for quick combo boxes where the choices are known locally. function ShowStyleSelector(label) { - /* static */ const style_idx = STATIC("style_idx", 0); + /* static */ const style_idx = STATIC("style_idx", -1); if (ImGui.Combo(label, (value = style_idx.value) => style_idx.value = value, "Classic\0Dark\0Light\0")) { switch (style_idx.value) { case 0: @@ -1890,7 +1978,7 @@ ImGui.SameLine(); ShowHelpMarker("- Load additional fonts with io.Fonts->AddFontFromFileTTF().\n" + "- The font atlas is built when calling io.Fonts->GetTexDataAsXXXX() or io.Fonts->Build().\n" + - "- Read FAQ and documentation in extra_fonts/ for more details.\n" + + "- Read FAQ and documentation in misc/fonts for more details.\n" + "- If you need to add/remove fonts at runtime (e.g. for DPI change), do it before calling NewFrame()."); } exports.ShowFontSelector = ShowFontSelector; @@ -1987,7 +2075,7 @@ else ImGui.LogToTTY(); ImGui.LogText("ImVec4* colors = ImGui.GetStyle().Colors;" + IM_NEWLINE); - for (let i = 0; i < 43 /* COUNT */; i++) { + for (let i = 0; i < 45 /* COUNT */; i++) { const col = style.Colors[i]; const name = ImGui.GetStyleColorName(i); if (!output_only_modified.value || !col.Equals(ref.Colors[i])) @@ -2010,9 +2098,9 @@ ImGui.RadioButton("Alpha", (value = alpha_flags.value) => alpha_flags.value = value, 1024 /* AlphaPreview */); ImGui.SameLine(); ImGui.RadioButton("Both", (value = alpha_flags.value) => alpha_flags.value = value, 2048 /* AlphaPreviewHalf */); - ImGui.BeginChild("#colors", new imgui_6.ImVec2(0, 300), true, 16384 /* AlwaysVerticalScrollbar */ | 32768 /* AlwaysHorizontalScrollbar */); + ImGui.BeginChild("#colors", new imgui_6.ImVec2(0, 300), true, 16384 /* AlwaysVerticalScrollbar */ | 32768 /* AlwaysHorizontalScrollbar */ | 8388608 /* NavFlattened */); ImGui.PushItemWidth(-160); - for (let i = 0; i < 43 /* COUNT */; i++) { + for (let i = 0; i < 45 /* COUNT */; i++) { const name = ImGui.GetStyleColorName(i); if (!filter.value.PassFilter(name)) continue; @@ -2020,7 +2108,7 @@ ImGui.ColorEdit4("##color", style.Colors[i], 512 /* AlphaBar */ | alpha_flags.value); if (!style.Colors[i].Equals(ref.Colors[i])) { // Tips: in a real user application, you may want to merge and use an icon font into the main font, so instead of "Save"/"Revert" you'd use icons. - // Read the FAQ and extra_fonts/README.txt about using icon fonts. It's really easy and super convenient! + // Read the FAQ and misc/fonts/README.txt about using icon fonts. It's really easy and super convenient! ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Save")) ref.Colors[i].Copy(style.Colors[i]); @@ -2057,6 +2145,7 @@ // ImGui.Text("The quick brown fox jumps over the lazy dog"); // ImGui.PopFont(); // ImGui.DragFloat("Font scale", &font->Scale, 0.005f, 0.3f, 2.0f, "%.1f"); // Scale only this font + // ImGui.InputFloat("Font offset", &font->DisplayOffset.y, 1, 1, 0); // ImGui.SameLine(); ShowHelpMarker("Note than the default embedded font is NOT meant to be scaled.\n\nFont are currently rendered into bitmaps at a given size at the time of building the atlas. You may oversample them to get some flexibility with scaling. You can also render at multiple sizes and select which one to use at runtime.\n\n(Glimmer of hope: the atlas system should hopefully be rewritten in the future to make scaling more natural and automatic.)"); // ImGui.Text("Ascent: %f, Descent: %f, Height: %f", font->Ascent, font->Descent, font->Ascent - font->Descent); // ImGui.Text("Fallback character: '%c' (%d)", font->FallbackChar, font->FallbackChar); @@ -2179,14 +2268,16 @@ ImGui.EndMenu(); } if (ImGui.BeginMenu("Colors")) { - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); - for (let i = 0; i < 43 /* COUNT */; i++) { + const sz = ImGui.GetTextLineHeight(); + for (let i = 0; i < 45 /* COUNT */; i++) { const name = ImGui.GetStyleColorName(i); ImGui.ColorButton(name, ImGui.GetStyleColorVec4(i)); + const p = ImGui.GetCursorScreenPos(); + ImGui.GetWindowDrawList().AddRectFilled(p, new imgui_6.ImVec2(p.x + sz, p.y + sz), ImGui.GetColorU32(i)); + ImGui.Dummy(new imgui_6.ImVec2(sz, sz)); ImGui.SameLine(); ImGui.MenuItem(name); } - ImGui.PopStyleVar(); ImGui.EndMenu(); } if (ImGui.BeginMenu("Disabled", false)) { @@ -2277,7 +2368,7 @@ const window_pos = new imgui_6.ImVec2((corner.value & 1) ? ImGui.GetIO().DisplaySize.x - DISTANCE : DISTANCE, (corner.value & 2) ? ImGui.GetIO().DisplaySize.y - DISTANCE : DISTANCE); const window_pos_pivot = new imgui_6.ImVec2((corner.value & 1) ? 1.0 : 0.0, (corner.value & 2) ? 1.0 : 0.0); ImGui.SetNextWindowPos(window_pos, 1 /* Always */, window_pos_pivot); - ImGui.PushStyleColor(2 /* WindowBg */, new imgui_7.ImVec4(0.0, 0.0, 0.0, 0.3)); // Transparent background + ImGui.SetNextWindowBgAlpha(0.3); // Transparent background if (ImGui.Begin("Example: Fixed Overlay", p_open, 1 /* NoTitleBar */ | 2 /* NoResize */ | 64 /* AlwaysAutoResize */ | 4 /* NoMove */ | 256 /* NoSavedSettings */)) { ImGui.Text("Simple overlay\nin the corner of the screen.\n(right-click to change position)"); ImGui.Separator(); @@ -2291,11 +2382,12 @@ corner.value = 2; if (ImGui.MenuItem("Bottom-right", null, corner.value === 3)) corner.value = 3; + if (p_open() && ImGui.MenuItem("Close")) + p_open(false); ImGui.EndPopup(); } ImGui.End(); } - ImGui.PopStyleColor(); } // Demonstrate using "##" and "###" in identifiers to manipulate ID generation. // This apply to regular items as well. Read FAQ section "How can I have multiple widgets with the same label? Can I have widget without a label? (Yes). A primer on the purpose of labels/IDs." for details. @@ -2408,7 +2500,7 @@ if (adding_line.value) { adding_preview = true; points.value.push_back(mouse_pos_in_canvas); - if (!ImGui.GetIO().MouseDown[0]) + if (!ImGui.IsMouseDown(0)) adding_line.value = adding_preview = false; } if (ImGui.IsItemHovered()) { @@ -2519,7 +2611,7 @@ this.ScrollToBottom = true; // /* static */ const t: Static = getStatic("t", 0.0); if (ImGui.GetTime() - t > 0.02) { t = ImGui.GetTime(); this.AddLog(`Spam ${t}`); } ImGui.Separator(); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(0, 0)); /* static */ const filter = STATIC("filter#2763", new imgui_11.ImGuiTextFilter()); filter.value.Draw("Filter (\"incl,-excl\") (\"error\")", 180); ImGui.PopStyleVar(); @@ -2542,16 +2634,16 @@ // A typical application wanting coarse clipping and filtering may want to pre-compute an array of indices that passed the filtering test, recomputing this array when user changes the filter, // and appending newly elements as they are inserted. This is left as a task to the user until we can manage to improve this example code! // If your items are of variable size you may want to implement code similar to what ImGuiListClipper does. Or split your data into fixed height items to allow random-seeking into your list. - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(4, 1)); // Tighten spacing + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(4, 1)); // Tighten spacing if (copy_to_clipboard) ImGui.LogToClipboard(); + const col_default_text = ImGui.GetStyleColorVec4(0 /* Text */); for (let i = 0; i < this.Items.Size; i++) { // const char* item = Items[i]; const item = this.Items.Data[i]; if (!filter.value.PassFilter(item)) continue; - // ImVec4 col = ImVec4(1.0f,1.0f,1.0f,1.0f); // A better implementation may store a type per-item. For the sample let's just parse the text. - let col = new imgui_7.ImVec4(1.0, 1.0, 1.0, 1.0); // A better implementation may store a type per-item. For the sample let's just parse the text. + let col = col_default_text; // if (strstr(item, "[error]")) col = ImColor(1.0f,0.4f,0.4f,1.0f); if (/\[error\]/.test(item)) col = new imgui_7.ImVec4(1.0, 0.4, 0.4, 1.0); @@ -2570,6 +2662,7 @@ ImGui.EndChild(); ImGui.Separator(); // Command-line + let reclaim_focus = false; if (ImGui.InputText("Input", this.InputBuf, imgui_3.IM_ARRAYSIZE(this.InputBuf), 32 /* EnterReturnsTrue */ | 64 /* CallbackCompletion */ | 128 /* CallbackHistory */, ExampleAppConsole.TextEditCallbackStub, this)) { // char* input_end = InputBuf+strlen(InputBuf); // while (input_end > InputBuf && input_end[-1] === ' ') { input_end--; } *input_end = 0; @@ -2579,9 +2672,11 @@ this.ExecCommand(this.InputBuf.buffer); // strcpy(InputBuf, ""); this.InputBuf.buffer = ""; + reclaim_focus = true; } - // Demonstrate keeping auto focus on the input box - if (ImGui.IsItemHovered() || (ImGui.IsWindowFocused(3 /* RootAndChildWindows */) && !ImGui.IsAnyItemActive() && !ImGui.IsMouseClicked(0))) + // Demonstrate keeping focus on the input box + ImGui.SetItemDefaultFocus(); + if (reclaim_focus) ImGui.SetKeyboardFocusHere(-1); // Auto focus previous widget ImGui.End(); } @@ -2841,7 +2936,7 @@ return; } ShowHelpMarker("This example shows how you may implement a property editor using two columns.\nAll objects/fields data are dummies here.\nRemember that in many simple cases, you can use ImGui.SameLine(xxx) to position\nyour cursor horizontally instead of using the Columns() API."); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_6.ImVec2(2, 2)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_6.ImVec2(2, 2)); ImGui.Columns(2); ImGui.Separator(); class funcs { @@ -2926,7 +3021,7 @@ case 1: { // Multiple calls to Text(), manually coarsely clipped - demonstrate how to use the ImGuiListClipper helper. - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); const clipper = new imgui_13.ImGuiListClipper(lines.value); while (clipper.Step()) for (let i = clipper.DisplayStart; i < clipper.DisplayEnd; i++) @@ -2937,7 +3032,7 @@ } case 2: // Multiple calls to Text(), not clipped (slow) - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_6.ImVec2(0, 0)); for (let i = 0; i < lines.value; i++) ImGui.Text(`${i} The quick brown fox jumps over the lazy dog`); ImGui.PopStyleVar(); @@ -2954,4 +3049,4 @@ // export function ShowFontSelector(label: string): void {} // export function ShowStyleEditor(ref: ImGuiStyle | null = null): void {} // #endif -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2RlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9CQUFvQjtBQUNwQixjQUFjOztBQUVkLGlHQUFpRztBQUNqRyxzSUFBc0k7QUFDdEksdUdBQXVHO0FBQ3ZHLGdKQUFnSjtBQUNoSiwwSkFBMEo7QUFDMUosMEZBQTBGO0FBQzFGLHNLQUFzSztBQUN0Syx3SEFBd0g7QUFDeEgsYUFBYTtBQUNiLCtEQUErRDtBQUUvRCxzSkFBc0o7QUFDdEosaUpBQWlKO0FBQ2pKLHNJQUFzSTtBQUN0SSw0SkFBNEo7QUFDNUosa0tBQWtLO0FBRWxLLDZEQUE2RDtBQUM3RCxrQ0FBa0M7QUFDbEMsU0FBUztBQUVULHFCQUFxQjtBQUNyQixrREFBa0Q7QUFDbEQsd0VBQXdFO0FBQ3hFLDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsb0VBQW9FO0FBQ3BFLDBDQUEwQztBQUMxQyxRQUFRO0FBQ1IsMENBQTBDO0FBQzFDLFNBQVM7QUFFVCxpQ0FBaUM7QUFDakMsbUNBQXdDO0FBQ3hDLG1DQUFvQztBQUNwQyxtQ0FBdUM7QUFDdkMsbUNBQXlDO0FBcUJ6QyxtQ0FBbUM7QUFDbkMsbUNBQW1EO0FBQ25ELG1DQUFtRDtBQUNuRCxtQ0FBbUM7QUFDbkMsbUNBQWtDO0FBRWxDLG9DQUFxQztBQUVyQyxvQ0FBMEM7QUFDMUMsb0NBQTBDO0FBQzFDLG9DQUEyQztBQUkzQyxrQkFBa0I7QUFDbEIsa0lBQWtJO0FBQ2xJLDZCQUE2QjtBQUM3QixTQUFTO0FBQ1QsbUJBQW1CO0FBQ25CLCtKQUErSjtBQUMvSixzTUFBc007QUFDdE0sZ0lBQWdJO0FBQ2hJLDhIQUE4SDtBQUM5SCx3VEFBd1Q7QUFDeFQsMkNBQTJDO0FBQzNDLHFJQUFxSTtBQUNySSxTQUFTO0FBQ1QsMEJBQTBCO0FBQzFCLDZIQUE2SDtBQUM3SCw0SUFBNEk7QUFDNUksNkpBQTZKO0FBQzdKLG1JQUFtSTtBQUNuSSxzQkFBc0I7QUFDdEIsd0tBQXdLO0FBQ3hLLFNBQVM7QUFDVCxTQUFTO0FBRVQsdUdBQXVHO0FBQ3ZHLGdCQUFnQjtBQUNoQiw0QkFBNEI7QUFDNUIsUUFBUTtBQUNSLDBCQUEwQjtBQUMxQixTQUFTO0FBQ1QsTUFBTSxVQUFVLEdBQVcsSUFBSSxDQUFDO0FBRWhDLDZEQUE2RDtBQUM3RCxnQkFBZ0IsRUFBVSxFQUFFLEVBQVUsSUFBWSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFeEYsK0VBQStFO0FBQy9FLFlBQVk7QUFDWiwrRUFBK0U7QUFFL0UsMEtBQTBLO0FBQzFLLHFDQUFxQztBQUNyQyxTQUFTO0FBRVQsMkNBQTJDO0FBRTNDO0lBQ0ksWUFBbUIsS0FBUTtRQUFSLFVBQUssR0FBTCxLQUFLLENBQUc7SUFBRyxDQUFDO0NBQ2xDO0FBRUQsTUFBTSxPQUFPLEdBQWlDLEVBQUUsQ0FBQztBQUVqRCxnQkFBbUIsR0FBVyxFQUFFLEtBQVE7SUFDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLE1BQU0sQ0FBSSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxtREFBbUQ7QUFDbkQsK0NBQStDO0FBQy9DLGtEQUFrRDtBQUNsRCwwREFBMEQ7QUFDMUQsb0RBQW9EO0FBQ3BELHNEQUFzRDtBQUN0RCw2REFBNkQ7QUFDN0Qsd0RBQXdEO0FBQ3hELHdEQUF3RDtBQUN4RCwyREFBMkQ7QUFDM0QsMkNBQTJDO0FBQzNDLHFDQUFxQztBQUVyQyx3QkFBd0IsSUFBWTtJQUVoQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUMxQixDQUFDO1FBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3JCLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7QUFDTCxDQUFDO0FBRUQ7SUFFSSxLQUFLLENBQUMsVUFBVSxDQUFDLCtDQUErQyxDQUFDLENBQUM7SUFDbEUsS0FBSyxDQUFDLFVBQVUsQ0FBQywyR0FBMkcsQ0FBQyxDQUFDO0lBQzlILEtBQUssQ0FBQyxVQUFVLENBQUMsbURBQW1ELENBQUMsQ0FBQztJQUN0RSxLQUFLLENBQUMsVUFBVSxDQUFDLDBEQUEwRCxDQUFDLENBQUM7SUFDN0UsS0FBSyxDQUFDLFVBQVUsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO0lBQy9FLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztRQUNuQyxLQUFLLENBQUMsVUFBVSxDQUFDLDJDQUEyQyxDQUFDLENBQUM7SUFDbEUsS0FBSyxDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzNDLEtBQUssQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUMxQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDZixLQUFLLENBQUMsVUFBVSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7SUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0lBQ2xELEtBQUssQ0FBQyxVQUFVLENBQUMsdUNBQXVDLENBQUMsQ0FBQztJQUMxRCxLQUFLLENBQUMsVUFBVSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFDM0QsS0FBSyxDQUFDLFVBQVUsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ2hELEtBQUssQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0QyxLQUFLLENBQUMsVUFBVSxDQUFDLG9GQUFvRixDQUFDLENBQUM7SUFDdkcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0FBQ3JCLENBQUM7QUFwQkQsc0NBb0JDO0FBRUQsa0RBQWtEO0FBQ2xELHdCQUErQixTQUF1RCxJQUFJO0lBRXRGLGdCQUFnQjtJQUNoQixZQUFZLENBQUMsTUFBTSxzQkFBc0IsR0FBb0IsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JHLFlBQVksQ0FBQyxNQUFNLGdCQUFnQixHQUFvQixNQUFNLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekYsWUFBWSxDQUFDLE1BQU0sWUFBWSxHQUFvQixNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLFlBQVksQ0FBQyxNQUFNLGVBQWUsR0FBb0IsTUFBTSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZGLFlBQVksQ0FBQyxNQUFNLHdCQUF3QixHQUFvQixNQUFNLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekcsWUFBWSxDQUFDLE1BQU0sa0JBQWtCLEdBQW9CLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3RixZQUFZLENBQUMsTUFBTSxvQkFBb0IsR0FBb0IsTUFBTSxDQUFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pHLFlBQVksQ0FBQyxNQUFNLDJCQUEyQixHQUFvQixNQUFNLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0csWUFBWSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRyxZQUFZLENBQUMsTUFBTSxzQkFBc0IsR0FBb0IsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JHLFlBQVksQ0FBQyxNQUFNLHlCQUF5QixHQUFvQixNQUFNLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0csWUFBWSxDQUFDLE1BQU0scUJBQXFCLEdBQW9CLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUVuRyxZQUFZLENBQUMsTUFBTSxnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pGLFlBQVksQ0FBQyxNQUFNLGNBQWMsR0FBb0IsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRXJGLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUFPLHlCQUF5QixFQUFFLENBQUM7SUFDcEUsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO1FBQWEscUJBQXFCLENBQUMsQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDbEksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUFpQixpQkFBaUIsQ0FBQyxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ3RILEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7UUFBYyxvQkFBb0IsQ0FBQyxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQy9ILEVBQUUsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQztRQUFLLDRCQUE0QixDQUFDLENBQUMsS0FBSyxHQUFHLHdCQUF3QixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ3pKLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQztRQUFXLHNCQUFzQixDQUFDLENBQUMsS0FBSyxHQUFHLGtCQUFrQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ3ZJLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQztRQUFTLHdCQUF3QixDQUFDLENBQUMsS0FBSyxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQzdJLEVBQUUsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLEtBQUssQ0FBQztRQUFFLCtCQUErQixDQUFDLENBQUMsS0FBSyxHQUFHLDJCQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsMkJBQTJCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ2xLLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUFPLDBCQUEwQixDQUFDLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ25KLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQztRQUFPLDBCQUEwQixDQUFDLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ25KLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQztRQUFJLDZCQUE2QixDQUFDLENBQUMsS0FBSyxHQUFHLHlCQUF5QixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMseUJBQXlCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBRTVKLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFhLENBQUM7UUFBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFBQyxDQUFDO0lBQ3hJLEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFRLENBQUM7UUFBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLFVBQVU7UUFBQSxlQUFlLEVBQUUsQ0FBQztRQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUFDLENBQUM7SUFDaE0sRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUN6QixDQUFDO1FBQ0csS0FBSyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssNEJBQXFDLENBQUM7UUFDcEksS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2xCLEtBQUssQ0FBQyxJQUFJLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUM5RCxLQUFLLENBQUMsSUFBSSxDQUFDLGlGQUFpRixDQUFDLENBQUM7UUFDOUYsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBTSxXQUFXLEdBQW9CLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0UsWUFBWSxDQUFDLE1BQU0sWUFBWSxHQUFvQixNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pGLFlBQVksQ0FBQyxNQUFNLE9BQU8sR0FBb0IsTUFBTSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RSxZQUFZLENBQUMsTUFBTSxPQUFPLEdBQW9CLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkUsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUFvQixNQUFNLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNFLFlBQVksQ0FBQyxNQUFNLFdBQVcsR0FBb0IsTUFBTSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRSxZQUFZLENBQUMsTUFBTSxRQUFRLEdBQW9CLE1BQU0sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFekUsa0ZBQWtGO0lBQ2xGLElBQUksWUFBWSxHQUFzQixDQUFDLENBQUM7SUFDeEMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUFFLFlBQVksc0JBQStCLENBQUM7SUFDcEUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUFDLFlBQVksdUJBQWdDLENBQUM7SUFDckUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQUssWUFBWSxzQkFBNEIsQ0FBQztJQUNqRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQU0sWUFBWSxrQkFBMkIsQ0FBQztJQUNoRSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBQUksWUFBWSxvQkFBNkIsQ0FBQztJQUNsRSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQUUsWUFBWSx1QkFBK0IsQ0FBQztJQUNwRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQUssTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLGdDQUFnQztJQUV2RSxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyx1QkFBeUIsQ0FBQztJQUNyRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUNyRCxDQUFDO1FBQ0csNERBQTREO1FBQzVELEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNaLE1BQU0sQ0FBQztJQUNYLENBQUM7SUFFRCwwR0FBMEc7SUFDMUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQWlDLDBDQUEwQztJQUVyRyxLQUFLLENBQUMsSUFBSSxDQUFDLDJCQUEyQixxQkFBYSxHQUFHLENBQUMsQ0FBQztJQUV4RCxPQUFPO0lBQ1AsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQ3pCLENBQUM7UUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzVCLENBQUM7WUFDRyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3RCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUNoQyxDQUFDO1lBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3RILEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNwRyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN4RixLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN4RyxLQUFLLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUM1SCxLQUFLLENBQUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsSCxLQUFLLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN6SCxLQUFLLENBQUMsUUFBUSxDQUFDLDZCQUE2QixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRywyQkFBMkIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLDJCQUEyQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUM5SSxLQUFLLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN2SCxLQUFLLENBQUMsUUFBUSxDQUFDLDRCQUE0QixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNuSSxLQUFLLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLHlCQUF5QixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUMvSCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDNUIsQ0FBQztZQUNHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNwRyxLQUFLLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcscUJBQXFCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbkgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUN6RyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUNELEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUNuQyxDQUFDO1FBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQyw2SEFBNkgsQ0FBQyxDQUFDO1FBQ2pKLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDMUIsVUFBVSxDQUFBLGFBQWEsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUM3QyxDQUFDO1FBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEgsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqRyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2RyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3hGLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFFL0UsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csVUFBVSxDQUFBLGVBQWUsRUFBRSxDQUFDO1lBQzVCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQ3RDLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDRPQUE0TyxDQUFDLENBQUM7WUFDaFEsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25CLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUN0QyxDQUFDO1FBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sT0FBTyxHQUFtQixNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3ZCLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNwQixFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUN0QixDQUFDO2dCQUNHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1lBQzFDLENBQUM7WUFFRCxZQUFZLENBQUMsTUFBTSxLQUFLLEdBQW9CLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUV6RSxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQW1CLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFFdEUsMEdBQTBHO1lBQzFHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUMxQixDQUFDO2dCQUNHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM1QixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixLQUFLLENBQUMsY0FBYyxrQkFBa0IsZUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNwRSxLQUFLLENBQUMsY0FBYyx5QkFBeUIsZUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMzRSxLQUFLLENBQUMsY0FBYyx3QkFBd0IsZUFBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMxRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN0QixLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2QixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEIsQ0FBQztZQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDNUIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN0QixLQUFLLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFFdkMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQzFCLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNyQixLQUFLLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBQ25DLFlBQVksQ0FBQyxNQUFNLEdBQUcsR0FBcUIsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBRSxDQUFDLENBQUM7Z0JBQ2xHLG9EQUFvRDtnQkFDcEQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxvQkFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNuRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsQ0FBQztZQUVELHNDQUFzQztZQUN0QyxrQ0FBa0M7WUFDbEMsNkJBQTZCO1lBQzdCLGVBQWU7WUFDZiwwREFBMEQ7WUFFMUQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBRWxCLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRWxDLENBQUM7Z0JBQ0csb0ZBQW9GO2dCQUNwRixZQUFZLENBQUMsTUFBTSxjQUFjLEdBQW1CLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDaEYsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsa0NBQWtDLENBQUMsQ0FBQztnQkFDekgsOE5BQThOO2dCQUU5Tiw0RkFBNEY7Z0JBQzVGLE1BQU0sS0FBSyxHQUFhLENBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUUsQ0FBQztnQkFDdEwsWUFBWSxDQUFDLE1BQU0sY0FBYyxHQUEwQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzFGLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUN0RCxDQUFDO29CQUNHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDNUMsQ0FBQzt3QkFDRyxNQUFNLFdBQVcsR0FBWSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnRkFBZ0Y7d0JBQ2xKLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDOzRCQUN4QyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDcEMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDOzRCQUNaLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUcsK0hBQStIO29CQUN0SyxDQUFDO29CQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztZQUNMLENBQUM7WUFFRCxDQUFDO2dCQUNHLFlBQVksQ0FBQyxNQUFNLElBQUksR0FBMkIsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLHNCQUFjLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBbUIsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDMUQsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3BFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFBQyxjQUFjLENBQUMsMkNBQTJDLEdBQUcsaUNBQWlDLEdBQUcseUNBQXlDLEdBQUcsbUNBQW1DLEdBQUcsNEJBQTRCLEdBQUcscUJBQXFCLENBQUMsQ0FBQztnQkFFM1AsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFDcEUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUFDLGNBQWMsQ0FBQyw0SUFBNEksQ0FBQyxDQUFDO2dCQUUvSyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBRW5GLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBNkIsTUFBTSxDQUFtQixPQUFPLEVBQUUsQ0FBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUUsQ0FBQyxDQUFDO2dCQUNuSCxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkQsQ0FBQztZQUVELENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBbUIsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDeEcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFBQyxjQUFjLENBQUMsbUhBQW1ILENBQUMsQ0FBQztnQkFFdEosS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFFOUYsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsR0FBbUIsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDOUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzdFLEtBQUssQ0FBQyxTQUFTLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDOUcsQ0FBQztZQUVELENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM1RCxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDN0UsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUFDLGNBQWMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUUvRCxZQUFZLENBQUMsTUFBTSxFQUFFLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxHQUFtQixNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUM1RyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLGNBQWMsQ0FBQyxDQUFDO2dCQUNwRyxLQUFLLENBQUMsV0FBVyxDQUFDLGtCQUFrQixFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3hHLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDaEUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNwRixDQUFDO1lBRUQsWUFBWSxDQUFDLE1BQU0sSUFBSSxHQUE2QixNQUFNLENBQW1CLE1BQU0sRUFBRSxDQUFFLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFFLENBQUMsQ0FBQztZQUN0RyxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTZCLE1BQU0sQ0FBbUIsTUFBTSxFQUFFLENBQUUsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFFLENBQUMsQ0FBQztZQUMxRyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLCtKQUErSixDQUFDLENBQUM7WUFFbE0sS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXhDLE1BQU0sYUFBYSxHQUFhLENBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxZQUFZLENBQUUsQ0FBQztZQUNwSSxZQUFZLENBQUMsTUFBTSxvQkFBb0IsR0FBbUIsTUFBTSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVGLEtBQUssQ0FBQyxPQUFPLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLGFBQWEsRUFBRSxvQkFBWSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRXJLLFlBQVksQ0FBQyxNQUFNLHFCQUFxQixHQUFtQixNQUFNLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDOUYsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxhQUFhLEVBQUUsb0JBQVksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN6SixLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7WUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQ2xDLENBQUM7Z0JBQ0csR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUN0QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDL0MsQ0FBQzt3QkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUN4QixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQ2pCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7NEJBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQ2xFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDcEIsQ0FBQztnQkFDTCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsaUNBQWlDLENBQUMsQ0FBQyxDQUN0RCxDQUFDO2dCQUNHLGNBQWMsQ0FBQyw4SUFBOEksQ0FBQyxDQUFDO2dCQUMvSixZQUFZLENBQUMsTUFBTSxtQ0FBbUMsR0FBb0IsTUFBTSxDQUFDLHFDQUFxQyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUMvSCxLQUFLLENBQUMsUUFBUSxDQUFDLHNDQUFzQyxFQUFFLENBQUMsS0FBSyxHQUFHLG1DQUFtQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsbUNBQW1DLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNqSyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNyQixFQUFFLENBQUMsQ0FBQyxtQ0FBbUMsQ0FBQyxLQUFLLENBQUM7b0JBQzFDLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQztnQkFFdEQsWUFBWSxDQUFDLE1BQU0sY0FBYyxHQUFtQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLDZKQUE2SjtnQkFDclAsSUFBSSxZQUFZLEdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBZ0IsMklBQTJJO2dCQUN6TCxLQUFLLENBQUMsWUFBWSx5QkFBOEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsbUVBQW1FO2dCQUMzSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUIsQ0FBQztvQkFDRyxnSEFBZ0g7b0JBQ2hILElBQUksVUFBVSxHQUF1QixrREFBcUUsR0FBRyxDQUFDLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQTZCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDbkwsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNWLENBQUM7d0JBQ0csT0FBTzt3QkFDUCxNQUFNLFNBQVMsR0FBWSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ25GLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQzs0QkFDdEIsWUFBWSxHQUFHLENBQUMsQ0FBQzt3QkFDckIsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQ2QsQ0FBQzs0QkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7NEJBQ25DLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQzt3QkFDcEIsQ0FBQztvQkFDTCxDQUFDO29CQUNELElBQUksQ0FDSixDQUFDO3dCQUNHLDBKQUEwSjt3QkFDMUosVUFBVSxJQUFJLHlDQUE2RCxDQUFDLENBQUMsNEJBQTRCO3dCQUN6RyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ3hELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQzs0QkFDdEIsWUFBWSxHQUFHLENBQUMsQ0FBQztvQkFDekIsQ0FBQztnQkFDTCxDQUFDO2dCQUNELEVBQUUsQ0FBQyxDQUFDLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUN4QixDQUFDO29CQUNHLGtIQUFrSDtvQkFDbEgsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQzt3QkFDdEIsY0FBYyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFVLHVCQUF1QjtvQkFDakYsSUFBSTt3QkFDQSxjQUFjLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDLENBQVcseUJBQXlCO2dCQUN2RixDQUFDO2dCQUNELEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDcEIsRUFBRSxDQUFDLENBQUMsbUNBQW1DLENBQUM7b0JBQ3BDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQztnQkFDcEQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUN6QyxDQUFDO1lBQ0csWUFBWSxDQUFDLE1BQU0sY0FBYyxHQUFvQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDcEYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3JHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUNyQyxDQUFDO2dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RELEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDdEIsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN4QyxDQUFDO1lBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLDRCQUE0QixFQUFFLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FDekgsQ0FBQztnQkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixLQUFLLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RCxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ3RCLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEMsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUM5QixDQUFDO1lBQ0csS0FBSyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ25DLEtBQUssQ0FBQyxVQUFVLENBQUMsbUNBQW1DLENBQUMsQ0FBQztZQUN0RCxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUM7WUFDekQsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM1QyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FDM0IsQ0FBQztZQUNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FDbkMsQ0FBQztnQkFDRyxxRkFBcUY7Z0JBQ3JGLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ3ZELEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3pELEtBQUssQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQy9CLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFBQyxjQUFjLENBQUMsaURBQWlELENBQUMsQ0FBQztnQkFDcEYsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQ3BDLENBQUM7Z0JBQ0csdUZBQXVGO2dCQUN2RixLQUFLLENBQUMsV0FBVyxDQUFDLHFMQUFxTCxDQUFDLENBQUM7Z0JBQ3pNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFFaEIsWUFBWSxDQUFDLE1BQU0sVUFBVSxHQUFtQixNQUFNLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUM1RSxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBRTFHLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxHQUFHLEdBQXFCLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUN2RCxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxDQUFDLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzVMLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pFLEtBQUssQ0FBQyxJQUFJLENBQUMsb0VBQW9FLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxtRkFBbUYsQ0FBQyxDQUFDO2dCQUMvTCxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxFQUFFLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFFdkIsS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2dCQUNoQyxHQUFHLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQ2pDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLGdCQUFRLENBQUMsR0FBRyxFQUFDLENBQUMsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDNUwsS0FBSyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakUsS0FBSyxDQUFDLElBQUksQ0FBQyxrRkFBa0YsQ0FBQyxDQUFDO2dCQUMvRixLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxFQUFFLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFFdkIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQ2pDLENBQUM7Z0JBQ0csc0NBQXNDO2dCQUN0Qyw2SEFBNkg7Z0JBQzdILHFGQUFxRjtnQkFDckYsMklBQTJJO2dCQUMzSSx1SUFBdUk7Z0JBQ3ZJLHdHQUF3RztnQkFDeEcsNktBQTZLO2dCQUM3SyxLQUFLLENBQUMsV0FBVyxDQUFDLHVLQUF1SyxDQUFDLENBQUM7Z0JBQzNMLEtBQUssQ0FBQyxJQUFJLENBQUMscUZBQXFGLENBQUMsQ0FBQztnQkFDbEcsS0FBSyxDQUFDLElBQUksQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO2dCQUNyRSxZQUFZLENBQUMsTUFBTSxHQUFHLEdBQTJCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZO2dCQUM1SSxLQUFLLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLG9CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ25FLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQzdCLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDBPQUEwTyxDQUFDLENBQUM7WUFDOVAsTUFBTSxFQUFFLEdBQVksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBRWxDLDRHQUE0RztZQUM1RyxpTEFBaUw7WUFDakwsdUtBQXVLO1lBQ3ZLLG9MQUFvTDtZQUNwTCxrTEFBa0w7WUFDbEwscUtBQXFLO1lBQ3JLLHdHQUF3RztZQUN4RyxNQUFNLFNBQVMsR0FBd0IsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDdEQsTUFBTSxRQUFRLEdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDM0MsTUFBTSxRQUFRLEdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFFNUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDNUQsTUFBTSxHQUFHLEdBQXFCLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQ3pELEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksY0FBTSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkosRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQzFCLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNyQixNQUFNLFFBQVEsR0FBVyxJQUFJLENBQUM7Z0JBQzlCLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFHLEdBQUcsQ0FBQztnQkFBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO29CQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7Z0JBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxRQUFRLEdBQUcsUUFBUSxDQUFDO29CQUFDLE9BQU8sR0FBRyxRQUFRLEdBQUcsUUFBUSxDQUFDO2dCQUM5SixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLFFBQVEsR0FBRyxHQUFHLENBQUM7Z0JBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztvQkFBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO2dCQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztvQkFBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDOUosS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xFLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDNUYsTUFBTSxHQUFHLEdBQVcsSUFBSSxjQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztnQkFDM0UsTUFBTSxHQUFHLEdBQVcsSUFBSSxjQUFNLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRyx5R0FBeUc7Z0JBQ3pHLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hILEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixDQUFDO1lBQ0QsS0FBSyxDQUFDLFdBQVcsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO1lBQ3JELFlBQVksQ0FBQyxNQUFNLGFBQWEsR0FBbUIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUIsQ0FBQztnQkFDRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixJQUFJLGFBQWEsR0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBSyw0QkFBNEI7Z0JBQ3BFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsSUFBSSxHQUFDLFFBQVEsRUFBQyxFQUFFLEdBQUMsUUFBUSxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzVJLGFBQWEsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO2dCQUM3QixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2QsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDaEIsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLGFBQWEsU0FBUyxDQUFDLENBQUM7WUFDOUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQ2xDLENBQUM7WUFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQzVCLENBQUM7Z0JBQ0csWUFBWSxDQUFDLE1BQU0sUUFBUSxHQUEyQixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztnQkFDNUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNqRyxLQUFLLENBQUMsVUFBVSxDQUFDLG9CQUFvQixFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQ2pHLEtBQUssQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQztnQkFDckMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUNqRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDJCQUF3QyxDQUFDO29CQUN2RyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUM7d0JBQzlCLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMseUNBQXlDLENBQUMsQ0FBQyxDQUM5RCxDQUFDO2dCQUNHLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBMkIsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFFLENBQUMsQ0FBQztnQkFDdEcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztnQkFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ3pJLEtBQUssQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUN6SSxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDekksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLENBQUM7WUFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQ2pDLENBQUM7Z0JBQ0csS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUM5QixZQUFZLENBQUMsTUFBTSxRQUFRLEdBQTRCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3pHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUMzQixDQUFDO29CQUNHLE1BQU0sS0FBSyxHQUFXLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQ2xDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQztvQkFDekYsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN2QixDQUFDO2dCQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUMzQixDQUFDO2dCQUNHLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBNEIsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBRSxDQUFDLENBQUM7Z0JBQzlMLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUMzQixDQUFDO29CQUNHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2hCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxFQUFFLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUMvRyxDQUFDO3dCQUNHLElBQUksQ0FBQyxHQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3pDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUss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LEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDcEQsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDMUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDbEQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLElBQUksQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQyw2RUFBNkUsQ0FBQyxDQUFDO1lBQ2hILEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLDBCQUEwQixFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDOUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFFckIsS0FBSyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ2xDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUFDLGNBQWMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMxQixLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDaEMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDeEQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXJCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQzlDLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLGdGQUFnRixDQUFDLENBQUM7WUFFcEcsT0FBTztZQUNQLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRWpELGlCQUFpQjtZQUNqQixLQUFLLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6RCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUMsQ0FBQyxFQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRWpELFNBQVM7WUFDVCxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hDLEtBQUssQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7WUFFNUIsU0FBUztZQUNULEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDOUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyRCxLQUFLLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLENBQUM7WUFFM0Msb0RBQW9EO1lBQ3BELEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDekMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDekMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QixLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNoRCxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUVoRCxXQUFXO1lBQ1gsWUFBWSxDQUFDLE1BQU0sRUFBRSxHQUFrQixNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxFQUFDLEVBQUUsR0FBa0IsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBQyxFQUFFLEdBQWtCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUMsRUFBRSxHQUFrQixNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ25MLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0UsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuRixLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9FLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFFL0QsVUFBVTtZQUNWLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBaUIsTUFBTSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQWlCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFpQixNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzlJLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDeEIsTUFBTSxLQUFLLEdBQWEsQ0FBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUUsQ0FBQztZQUMzRCxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQW1CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxLQUFLLEVBQUUsb0JBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQy9HLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUMxRixLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUMsR0FBRyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDMUYsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUVyQixLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUEwQixNQUFNLENBQUMsV0FBVyxFQUFFLENBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQztZQUMxRixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDMUIsQ0FBQztnQkFDRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDNUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFFLG9CQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDMUcsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNkLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4RSxDQUFDO1lBQ0QsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXJCLFFBQVE7WUFDUixNQUFNLEVBQUUsR0FBcUIsSUFBSSxjQUFNLENBQUMsRUFBRSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9DLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFdEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQzdCLENBQUM7WUFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLDhNQUE4TSxDQUFDLENBQUM7WUFDbE8sS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25CLENBQUM7Z0JBQ0csS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDakIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDcEIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNqQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3RCLEtBQUssQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUNoRCxDQUFDO1lBQ0QsZ0VBQWdFO1lBQ2hFLE1BQU0sSUFBSSxHQUFXLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUM3QyxNQUFNLE1BQU0sR0FBa0IsQ0FBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFFLENBQUM7WUFDOUQsS0FBSyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsb0JBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFFN0YsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUMsR0FBRyxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBQyxHQUFHLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVqQixLQUFLLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3pDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVqQixLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNsQyxLQUFLLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNuQyxLQUFLLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN4QyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFFdEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FDOUMsQ0FBQztZQUNHLEtBQUssQ0FBQyxXQUFXLENBQUMsc05BQXNOLENBQUMsQ0FBQztZQUUxTyxLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEQsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM3QyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXJCLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM3QyxLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFFOUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDN0MsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVyQixLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDN0MsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVyQixLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUU3QixLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLDRFQUE0RTtZQUM3RyxLQUFLLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUUxQixPQUFPO1lBQ1AsTUFBTSxPQUFPLEdBQVcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUM1RCxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzdCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFBQyxDQUFDLENBQUksa0JBQWtCO1lBRXRJLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQVMsZ0pBQWdKO1lBQ3pMLE1BQU0sU0FBUyxHQUFZLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBRSwrR0FBK0c7WUFDdEssS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3hELEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUFDLENBQUMsQ0FBRyxrQkFBa0I7WUFFckgsU0FBUztZQUNULEtBQUssQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDMUIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDN0IsS0FBSyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUVoQyxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pCLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUV4RCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FDaEMsQ0FBQztZQUNHLEtBQUssQ0FBQyxXQUFXLENBQUMsNkVBQTZFLENBQUMsQ0FBQztZQUNqRyxZQUFZLENBQUMsTUFBTSxLQUFLLEdBQW9CLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsWUFBWSxDQUFDLE1BQU0sVUFBVSxHQUFtQixNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxFQUFFLFlBQVksR0FBbUIsTUFBTSxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNySSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ3RFLEtBQUssQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQztZQUM5SixJQUFJLFNBQVMsR0FBWSxLQUFLLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3ZELEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUksU0FBUyxDQUFDO1lBQ2pLLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFFbkMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzFCLENBQUM7Z0JBQ0csRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzVCLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNoRyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxHQUFHLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDekYsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUNWLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ3hGLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsR0FBRyxFQUFFLElBQUksRUFBRSxFQUNyQyxDQUFDO29CQUNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksSUFBSSxLQUFLLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FDN0MsQ0FBQzt3QkFDRyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksZUFBTyxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3dCQUMxRCxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLG9DQUFvQztvQkFDdkUsQ0FBQztvQkFDRCxJQUFJLENBQ0osQ0FBQzt3QkFDRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztvQkFDL0IsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sUUFBUSxHQUFXLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxZQUFZLEdBQVcsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUMxRixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQzNDLENBQUM7WUFDRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFBQyxLQUFLLENBQUMsV0FBVyxDQUFDLG1IQUFtSCxDQUFDLENBQUM7WUFDdkosS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyx5R0FBeUcsQ0FBQyxDQUFDO1lBQzdJLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuRSxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUUsS0FBSyxDQUFDLFlBQVkseUJBQThCLEdBQUcsQ0FBQyxDQUFDO1lBQ3JELEtBQUssQ0FBQyxZQUFZLHVCQUE2QixJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNyRSxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLHlCQUF5QixFQUFFLEdBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksaUNBQXVDLENBQUM7WUFDbkksR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxFQUM3QyxDQUFDO2dCQUNHLHFMQUFxTDtnQkFDckwsa0xBQWtMO2dCQUNsTCxNQUFNLFdBQVcsR0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNwRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFDcEMsQ0FBQztvQkFDRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dCQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDNUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDO29CQUM5QixNQUFNLE9BQU8sR0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNyQyxNQUFNLEtBQUssR0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7b0JBQy9GLE1BQU0sR0FBRyxHQUFXLENBQUMsR0FBQyxJQUFJLENBQUM7b0JBQzNCLEtBQUssQ0FBQyxjQUFjLGtCQUFrQixlQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDbEUsS0FBSyxDQUFDLGNBQWMseUJBQXlCLGVBQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUN6RSxLQUFLLENBQUMsY0FBYyx3QkFBd0IsZUFBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ3hFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksY0FBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDdkUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdkIsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQixDQUFDO1lBQ0wsQ0FBQztZQUNELE1BQU0sUUFBUSxHQUFXLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxZQUFZLEdBQVcsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzFGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JCLElBQUksY0FBYyxHQUFXLEdBQUcsQ0FBQztZQUNqQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUFDLGNBQWMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hILEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUFDLGNBQWMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDO1lBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hILEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsS0FBSyxHQUFHLENBQUMsQ0FDM0IsQ0FBQztnQkFDRyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMseUlBQXlJO2dCQUN4SyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztnQkFDdEQsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDL0IsQ0FBQztZQUNHLFlBQVksQ0FBQyxNQUFNLElBQUksR0FBbUIsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxNQUFNLEdBQW1CLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDOUksS0FBSyxDQUFDLFdBQVcsQ0FBQywyUUFBMlEsQ0FBQyxDQUFDO1lBQy9SLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDOUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sR0FBRyxHQUFxQixLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUN6RCxNQUFNLFNBQVMsR0FBcUIsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JHLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLElBQUksS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUFDLENBQUM7WUFDcEosS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBUSxDQUFDLEVBQUUsRUFBQyxFQUFFLEVBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDekgsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUMsR0FBRyxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUMsR0FBRyxDQUFDLENBQUMsR0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGdCQUFRLENBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsR0FBRyxDQUFDLEVBQUUsK0JBQStCLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUMxTixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztJQUNMLENBQUM7SUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUNyRCxDQUFDO1FBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUM3QixDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQywrSEFBK0gsQ0FBQyxDQUFDO1lBRW5KLFlBQVksQ0FBQyxNQUFNLGFBQWEsR0FBbUIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9FLE1BQU0sS0FBSyxHQUFhLENBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBRSxDQUFDO1lBQ2xGLFlBQVksQ0FBQyxNQUFNLE9BQU8sR0FBc0IsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUUsQ0FBQyxDQUFDO1lBRXhHLHlCQUF5QjtZQUN6QixnTEFBZ0w7WUFDaEwsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDekIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMxRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQy9CLENBQUM7Z0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDdkIsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNsQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUN4QyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUMzQixhQUFhLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztnQkFDaEMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCw4QkFBOEI7WUFDOUIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDekIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQy9CLENBQUM7Z0JBQ0csR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUM1QyxDQUFDO29CQUNHLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN6RixDQUFDO2dCQUNELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FDaEMsQ0FBQztvQkFDRyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUMzQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3BCLENBQUM7Z0JBRUQsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNsQixLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUMzQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3RCLEtBQUssQ0FBQyxVQUFVLENBQUMsNkJBQTZCLENBQUMsQ0FBQztnQkFFcEQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztvQkFDOUIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDckMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUN0QyxDQUFDO29CQUNHLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFDNUMsQ0FBQzt3QkFDRyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztvQkFDekYsQ0FBQztvQkFDRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2hDLENBQUM7d0JBQ0csS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQzt3QkFDM0IsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO29CQUNwQixDQUFDO29CQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztnQkFDRCxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQzdCLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDakMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUNsQyxDQUFDO2dCQUNHLG1CQUFtQixFQUFFLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBRUQsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQ3BDLENBQUM7WUFDRyxvR0FBb0c7WUFDcEcsK0NBQStDO1lBQy9DLHVCQUF1QjtZQUN2Qiw0QkFBNEI7WUFDNUIsNklBQTZJO1lBQzdJLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBbUIsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLENBQUM7WUFDdkUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FDckQsQ0FBQztnQkFDRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO2dCQUN2RCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO2dCQUN4RCxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hCLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzFGLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDckIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQTJCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxzQkFBYyxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ25HLE1BQU0sR0FBRyxHQUFXLFdBQVcsSUFBSSxXQUFXLENBQUMsQ0FBQyx3REFBd0Q7WUFDeEcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUNsQyxDQUFDO2dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ3pCLEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsb0JBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDaEUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDdEIsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQzlCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBRXZELEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUM3QixDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQyw4RkFBOEYsQ0FBQyxDQUFDO1lBRWxILEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ3pCLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDL0IsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsSUFBSSw0QkFBb0MsQ0FBQyxDQUM5RSxDQUFDO2dCQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsa0ZBQWtGLENBQUMsQ0FBQztnQkFDL0YsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUVsQix5Q0FBeUM7Z0JBQ3pDLDREQUE0RDtnQkFFNUQsWUFBWSxDQUFDLE1BQU0scUJBQXFCLEdBQW9CLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDbkcsS0FBSyxDQUFDLFlBQVksdUJBQTZCLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoRSxLQUFLLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLENBQUMsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUN2SCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBRXBCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFBQyxDQUFDO2dCQUN6RSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFBQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFBQyxDQUFDO2dCQUM3RSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQkFDakMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNqQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQ3ZDLENBQUM7Z0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxnR0FBZ0csQ0FBQyxDQUFDO2dCQUM3RyxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQW1CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pFLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxFQUFFLGtDQUFrQyxDQUFDLENBQUM7Z0JBQ3JHLFlBQVksQ0FBQyxNQUFNLEtBQUssR0FBNkIsTUFBTSxDQUFtQixTQUFTLEVBQUUsQ0FBRSxHQUFHLEVBQUMsR0FBRyxFQUFDLEdBQUcsRUFBQyxHQUFHLENBQUUsQ0FBQyxDQUFDO2dCQUM5RyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxrRUFBa0U7Z0JBRTNHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztvQkFDcEMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDakMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUN2QyxDQUFDO29CQUNHLEtBQUssQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsQ0FBQztvQkFDNUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQzt3QkFDdEIsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7b0JBQzlCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDckIsQ0FBQztnQkFFRCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN0QixLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDOUIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFFRCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsK0JBQStCLENBQUMsQ0FBQyxDQUNwRCxDQUFDO1lBQ0csS0FBSyxDQUFDLFdBQVcsQ0FBQyxrR0FBa0csQ0FBQyxDQUFDO1lBQ3RILEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixtSkFBbUo7WUFDbkosdUtBQXVLO1lBQ3ZLLHNLQUFzSztZQUN0SyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3RDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsQ0FBQyxDQUNwRCxDQUFDO2dCQUNHLG1CQUFtQixFQUFFLENBQUM7Z0JBQ3RCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNwQixDQUFDO1lBQ0QsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUN0QyxDQUFDO1FBQ0csS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV4QixnQkFBZ0I7UUFDaEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUM1QixDQUFDO1lBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQzlCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFFLG9CQUFvQjtZQUM1RCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7Z0JBQ0csTUFBTSxLQUFLLEdBQVcsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDO2dCQUMvQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUM7Z0JBQzdDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixDQUFDO1lBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUMzQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLHNCQUFzQjtZQUNyRCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMxQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsTUFBTSxLQUFLLEdBQWtCLENBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUUsQ0FBQztZQUN2RCxNQUFNLEtBQUssR0FBa0IsQ0FBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGFBQWEsQ0FBRSxDQUFDO1lBQ3pFLFlBQVksQ0FBQyxNQUFNLFFBQVEsR0FBbUIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUMxQixDQUFDO2dCQUNHLE1BQU0sS0FBSyxHQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN6RCxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxLQUFLLENBQUMseUJBQXNDLENBQUM7b0JBQ25GLFFBQVEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QixNQUFNLE9BQU8sR0FBWSxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQy9DLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkIsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3pDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUN6QyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDakQsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsdUVBQXVFO1FBQ3ZFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FDbEMsQ0FBQztZQUNHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUVsQixLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BCLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBRW5CLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QixZQUFZLENBQUMsTUFBTSxHQUFHLEdBQW1CLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RSxLQUFLLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBRW5CLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM1QixZQUFZLENBQUMsTUFBTSxHQUFHLEdBQW1CLE1BQU0sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFFbkIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQy9GLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMvRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUFDLENBQUM7WUFBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0YsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxnQkFBZ0I7UUFDaEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNwQyxDQUFDO1lBQ0csS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxXQUFXLENBQUMsOENBQThDLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ2hDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNuQixLQUFLLENBQUMsV0FBVyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNqQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FDOUIsQ0FBQztZQUNHLG9FQUFvRTtZQUNwRSxZQUFZLENBQUMsTUFBTSxTQUFTLEdBQW9CLE1BQU0sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDMUUsWUFBWSxDQUFDLE1BQU0sU0FBUyxHQUFvQixNQUFNLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzFFLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDbkYsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUM7WUFDakYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQzVCLENBQUM7Z0JBQ0csRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUNoRCxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3RCLDZDQUE2QztnQkFDN0MsTUFBTSxDQUFDLEdBQVcsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUM3RCxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkcsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZCLENBQUM7WUFDRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQ2hCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUN0QixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELG9CQUFvQjtRQUNwQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7VUF1QkU7UUFFRixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FDM0MsQ0FBQztZQUNHLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN4RCxLQUFLLENBQUMsVUFBVSxDQUFDLG1CQUFtQixFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxpQ0FBdUMsQ0FBQztZQUM1SCxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2xCLE1BQU0sV0FBVyxHQUFXLElBQUksQ0FBQztZQUNqQyxNQUFNLE9BQU8sR0FBcUIsSUFBSSx5QkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFFLG9EQUFvRDtZQUMxSCxPQUFPLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFDckIsQ0FBQztnQkFDRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRTtvQkFDMUQsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQzNCLENBQUM7d0JBQ0csS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUN2QyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7b0JBQ3ZCLENBQUM7WUFDVCxDQUFDO1lBQ0QscURBQXFEO1lBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwQixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQVksS0FBSyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3JFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUFDLGNBQWMsQ0FBQywyRkFBMkYsQ0FBQyxDQUFDO1FBQzlILEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUNkLENBQUM7WUFDRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUMvQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFBQyxDQUFDO1lBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2pHLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQUMsQ0FBQztZQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUNELEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQ3hDLENBQUM7UUFDRyxZQUFZLENBQUMsTUFBTSxNQUFNLEdBQTRCLE1BQU0sQ0FBQyxhQUFhLEVBQUUsSUFBSSx3QkFBZSxDQUFDLENBQUM7UUFDaEcsS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUI7Y0FDZCxvQ0FBb0M7Y0FDcEMsbURBQW1EO2NBQ25ELDhEQUE4RDtjQUM5RCw4Q0FBOEMsQ0FBQyxDQUFDO1FBQzlELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEIsTUFBTSxLQUFLLEdBQWEsQ0FBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsY0FBYyxDQUFFLENBQUM7UUFDdEgsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUN4QyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FDN0MsQ0FBQztRQUNHLE1BQU0sRUFBRSxHQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNsQyxLQUFLLENBQUMsUUFBUSxDQUFDLG9CQUFvQixFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDakcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQUMsY0FBYyxDQUFDLG9XQUFvVyxDQUFDLENBQUM7UUFFdlksS0FBSyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUN2RCxLQUFLLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBQzdELEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRWpELEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUM3QyxDQUFDO1lBQ0csRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUN4QixLQUFLLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xFLElBQUk7Z0JBQ0EsS0FBSyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ3ZDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUcsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ2pOLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBVSxDQUFDO29CQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3BLLEtBQUssQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQVksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUFDLENBQUM7WUFDcEssS0FBSyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFTLENBQUM7b0JBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUFDLENBQUM7WUFDcEssS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRXZELEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUssQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQy9NLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWEsQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3pLLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFZLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVksQ0FBQztvQkFBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFBQyxDQUFDO1lBQ3pLLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxD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QUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzNILFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQXlCLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzdJLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksZ0JBQXlCLFNBQVMsQ0FBQyxDQUFDO1lBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1lBQzlJLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxrQ0FBb0QsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztZQUM3SyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxF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QUFFLENBQUMsQ0FDckQsQ0FBQztnQkFDRyxXQUFXLENBQUMsS0FBSyxHQUFHLGNBQWMsR0FBRyxLQUFLLENBQUM7Z0JBQzNDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3hCLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7UUFDRCxTQUFTLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLGNBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUMsR0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSx1REFBdUQ7UUFDMUssR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7WUFDN0MsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLGNBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBUSxDQUFDLEdBQUcsRUFBQyxHQUFHLEVBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFD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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfZGVtby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX2RlbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHdCQUF3QjtBQUN4QixjQUFjOztBQUVkLGlHQUFpRztBQUNqRyxzSUFBc0k7QUFDdEksdUdBQXVHO0FBQ3ZHLGdKQUFnSjtBQUNoSiwwSkFBMEo7QUFDMUosMEZBQTBGO0FBQzFGLHNLQUFzSztBQUN0Syx3SEFBd0g7QUFDeEgsYUFBYTtBQUNiLCtEQUErRDtBQUUvRCxzSkFBc0o7QUFDdEosaUpBQWlKO0FBQ2pKLHNJQUFzSTtBQUN0SSw0SkFBNEo7QUFDNUosa0tBQWtLO0FBRWxLLDZEQUE2RDtBQUM3RCxrQ0FBa0M7QUFDbEMsU0FBUztBQUVULHFCQUFxQjtBQUNyQixrREFBa0Q7QUFDbEQsd0VBQXdFO0FBQ3hFLDJEQUEyRDtBQUMzRCwwREFBMEQ7QUFDMUQsb0VBQW9FO0FBQ3BFLDBDQUEwQztBQUMxQyxRQUFRO0FBQ1IsMENBQTBDO0FBQzFDLFNBQVM7QUFFVCxpQ0FBaUM7QUFDakMsbUNBQXdDO0FBQ3hDLG1DQUFvQztBQUNwQyxtQ0FBdUM7QUFDdkMsbUNBQXlDO0FBcUJ6QyxtQ0FBbUM7QUFDbkMsbUNBQW1EO0FBQ25ELG1DQUFtRDtBQUNuRCxtQ0FBbUM7QUFDbkMsbUNBQWtDO0FBRWxDLG9DQUFxQztBQUVyQyxvQ0FBMEM7QUFDMUMsb0NBQTBDO0FBQzFDLG9DQUEyQztBQUkzQyxrQkFBa0I7QUFDbEIsa0lBQWtJO0FBQ2xJLDZCQUE2QjtBQUM3QixTQUFTO0FBQ1QsbUJBQW1CO0FBQ25CLCtKQUErSjtBQUMvSixzTUFBc007QUFDdE0sZ0lBQWdJO0FBQ2hJLDhIQUE4SDtBQUM5SCx3VEFBd1Q7QUFDeFQsMkNBQTJDO0FBQzNDLHFJQUFxSTtBQUNySSxTQUFTO0FBQ1QsMEJBQTBCO0FBQzFCLDZIQUE2SDtBQUM3SCw0SUFBNEk7QUFDNUksNkpBQTZKO0FBQzdKLG1JQUFtSTtBQUNuSSxzQkFB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QyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLEVBQUUsRUFBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQy9HLENBQUM7d0JBQ0csSUFBSSxDQUFDLEdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDekMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUMxRCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7d0JBQzFELEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDMUQsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzs0QkFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUM5RCxDQUFDO29CQUNELEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFBQyxLQUFLLENBQUMs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LEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztZQUFDLENBQUMsSUFBSSxPQUFPLENBQUM7WUFDbEcsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDek0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ1osQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLEdBQUMsT0FBTyxDQUFDO1FBQzFCLENBQUM7UUFDRCxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssR0FBQyxPQUFPLENBQUM7UUFDdEgsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLGNBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUM1RyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUNsSCxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksY0FBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLGNBQU0sQ0FBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsa0NBQW9ELENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUN4SyxTQUFTLENBQUMsaUJBQWlCLENBQUMsSUFBSSxjQUFNLENBQUMsQ0FBQyxHQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxFQUFDLENBQUMsR0FBQyxFQUFFLENBQUMsS0FBSyxHQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksY0FBTSxDQUFDLENBQUMsRUFBQyxDQUFDLEdBQUMsRUFBRSxDQUFDLEtBQUssR0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFDLE9BQU8sQ0FBQztRQUM5SixTQUFTLENBQUMsdUJBQXVCLENBQUMsSUFBSSxjQUFNLENBQUMs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QUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUNyRCxDQUFDO2dCQUNHLFdBQVcsQ0FBQyxLQUFLLEdBQUcsY0FBYyxHQUFHLEtBQUssQ0FBQztnQkFDM0MsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixDQUFDO1FBQ0wsQ0FBQztRQUNELFNBQVMsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxHQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFNLHVEQUF1RDtRQUMxSyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQztZQUM3QyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksY0FBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxF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 \ No newline at end of file diff --git a/imgui_demo.ts b/imgui_demo.ts index 40f7dcf..be0ad5d 100644 --- a/imgui_demo.ts +++ b/imgui_demo.ts @@ -1,4 +1,4 @@ -// dear imgui, v1.53 +// dear imgui, v1.60 WIP // (demo code) // Message to the person tempted to delete this file when integrating ImGui into their code base: @@ -55,7 +55,7 @@ import { ImGuiTreeNodeFlags } from "./imgui"; import { ImGuiWindowFlags } from "./imgui"; import { ImGuiTextEditCallbackData } from "./imgui"; -import { ImGuiSizeConstraintCallbackData } from "./imgui"; +import { ImGuiSizeCallbackData } from "./imgui"; import { ImDrawCornerFlags } from "./imgui"; import { ImU32 } from "./imgui"; import { ImVector } from "./imgui"; @@ -145,7 +145,7 @@ if (ImGui.IsItemHovered()) { ImGui.BeginTooltip(); - ImGui.PushTextWrapPos(450.0); + ImGui.PushTextWrapPos(ImGui.GetFontSize() * 35.0); ImGui.TextUnformatted(desc); ImGui.PopTextWrapPos(); ImGui.EndTooltip(); @@ -211,7 +211,7 @@ if (show_app_about.value) { ImGui.Begin("About Dear ImGui", (value = show_app_about.value) => show_app_about.value = value, ImGui.WindowFlags.AlwaysAutoResize); - ImGui.Text(`dear imgui, ${ImGui.GetVersion()}`); + ImGui.Text(`Dear ImGui, ${ImGui.GetVersion()}`); ImGui.Separator(); ImGui.Text("By Omar Cornut and all dear imgui contributors."); ImGui.Text("Dear ImGui is licensed under the MIT License, see LICENSE for more information."); @@ -225,6 +225,7 @@ /* static */ const no_resize: Static = STATIC("no_resize", false); /* static */ const no_collapse: Static = STATIC("no_collapse", false); /* static */ const no_close: Static = STATIC("no_close", false); + /* static */ const no_nav: Static = STATIC("no_nav", false); // Demonstrate the various window flags. Typically you would just use the default. let window_flags: ImGui.WindowFlags = 0; @@ -234,6 +235,7 @@ if (no_move.value) window_flags |= ImGuiWindowFlags.NoMove; if (no_resize.value) window_flags |= ImGuiWindowFlags.NoResize; if (no_collapse.value) window_flags |= ImGuiWindowFlags.NoCollapse; + if (no_nav.value) window_flags |= ImGuiWindowFlags.NoNav; if (no_close.value) p_open = null; // Don't pass our bool* to Begin ImGui.SetNextWindowSize(new ImVec2(550,680), ImGuiCond.FirstUseEver); @@ -298,7 +300,8 @@ ImGui.Checkbox("No move", (value = no_move.value) => no_move.value = value); ImGui.SameLine(150); ImGui.Checkbox("No resize", (value = no_resize.value) => no_resize.value = value); ImGui.SameLine(300); ImGui.Checkbox("No collapse", (value = no_collapse.value) => no_collapse.value = value); - ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); + ImGui.Checkbox("No close", (value = no_close.value) => no_close.value = value); ImGui.SameLine(150); + ImGui.Checkbox("No nav", (value = no_nav.value) => no_nav.value = value); if (ImGui.TreeNode("Style")) { @@ -465,7 +468,7 @@ { ImGui.Text("blah blah"); ImGui.SameLine(); - if (ImGui.SmallButton("print")) console.log(`Child ${i} pressed`); + if (ImGui.SmallButton("button")) {} ImGui.TreePop(); } ImGui.TreePop(); @@ -656,30 +659,63 @@ ImGui.SameLine(); } ImGui.NewLine(); - ImGui.Text(`Pressed ${pressed_count} times.`); + ImGui.Text(`Pressed ${pressed_count.value} times.`); ImGui.TreePop(); } if (ImGui.TreeNode("Selectables")) { + // Selectable() has 2 overloads: + // - The one taking "bool selected" as a read-only selection information. When Selectable() has been clicked is returns true and you can alter selection state accordingly. + // - The one taking "bool* p_selected" as a read-write selection information (convenient in some cases) + // The earlier is more flexible, as in real application your selection may be stored in a different manner (in flags within objects, as an external list, etc). if (ImGui.TreeNode("Basic")) { - /* static */ const selected: Static = STATIC("selected#672", [ false, true, false, false ]); - ImGui.Selectable("1. I am selectable", (value = selected.value[0]) => selected.value[0] = value); - ImGui.Selectable("2. I am selectable", (value = selected.value[1]) => selected.value[1] = value); + /* static */ const selection: Static = STATIC("selection#695", [ false, true, false, false, false ]); + ImGui.Selectable("1. I am selectable", (value = selection.value[0]) => selection.value[0] = value); + ImGui.Selectable("2. I am selectable", (value = selection.value[1]) => selection.value[1] = value); ImGui.Text("3. I am not selectable"); - ImGui.Selectable("4. I am selectable", (value = selected.value[2]) => selected.value[2] = value); - if (ImGui.Selectable("5. I am double clickable", selected.value[3], ImGuiSelectableFlags.AllowDoubleClick)) + ImGui.Selectable("4. I am selectable", (value = selection.value[3]) => selection.value[2] = value); + if (ImGui.Selectable("5. I am double clickable", selection.value[4], ImGuiSelectableFlags.AllowDoubleClick)) if (ImGui.IsMouseDoubleClicked(0)) - selected.value[3] = !selected.value[3]; + selection.value[4] = !selection.value[4]; ImGui.TreePop(); } - if (ImGui.TreeNode("Rendering more text into the same block")) + if (ImGui.TreeNode("Selection State: Single Selection")) { + /* static */ const selected: Static = STATIC("selected#707", -1); + for (let n = 0; n < 5; n++) + { + const buf: string = `Object ${n}`; + if (ImGui.Selectable(buf, selected.value === n)) + selected.value = n; + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Selection State: Multiple Selection")) + { + ShowHelpMarker("Hold CTRL and click to select multiple items."); + /* static */ const selection: Static = STATIC("selection#720", [ false, false, false, false, false ]); + for (let n = 0; n < 5; n++) + { + const buf: string = `Object ${n}`; + if (ImGui.Selectable(buf, selection.value[n])) + { + if (!ImGui.GetIO().KeyCtrl) // Clear selection when CTRL is not held + // memset(selection, 0, sizeof(selection)); + selection.value.fill(false); + selection.value[n] = !selection.value[n]; + } + } + ImGui.TreePop(); + } + if (ImGui.TreeNode("Rendering more text into the same line")) + { + // Using the Selectable() override that takes "bool* p_selected" parameter and toggle your booleans automatically. /* static */ const selected: Static = STATIC("selected#687", [ false, false, false ]); - ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); + ImGui.Selectable("main.c", (value = selected.value[0]) => selected.value[0] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); ImGui.Selectable("Hello.cpp", (value = selected.value[1]) => selected.value[1] = value); ImGui.SameLine(300); ImGui.Text("12,345 bytes"); - ImGui.Selectable("Hello.h", (value = selected.value[2]) => selected.value[2] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); + ImGui.Selectable("Hello.h", (value = selected.value[2]) => selected.value[2] = value); ImGui.SameLine(300); ImGui.Text(" 2,345 bytes"); ImGui.TreePop(); } if (ImGui.TreeNode("In columns")) @@ -825,14 +861,14 @@ { /* static */ const color: Static = STATIC("color#863", new ImColor(114, 144, 154, 200).toImVec4()); - /* static */ const hdr: Static = STATIC("hdr", false); /* static */ const alpha_preview: Static = STATIC("alpha_preview", true); /* static */ const alpha_half_preview: Static = STATIC("alpha_half_preview", false); /* static */ const options_menu: Static = STATIC("options_menu", true); - ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); ImGui.SameLine(); ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); + /* static */ const hdr: Static = STATIC("hdr", false); ImGui.Checkbox("With Alpha Preview", (value = alpha_preview.value) => alpha_preview.value = value); ImGui.Checkbox("With Half Alpha Preview", (value = alpha_half_preview.value) => alpha_half_preview.value = value); ImGui.Checkbox("With Options Menu", (value = options_menu.value) => options_menu.value = value); ImGui.SameLine(); ShowHelpMarker("Right-click on the individual color widget to show options."); + ImGui.Checkbox("With HDR", (value = hdr.value) => hdr.value = value); ImGui.SameLine(); ShowHelpMarker("Currently all this does is to lift the 0..1 limits on dragging widgets."); const misc_flags: ImGuiColorEditFlags = (hdr.value ? ImGuiColorEditFlags.HDR : 0) | (alpha_half_preview.value ? ImGuiColorEditFlags.AlphaPreviewHalf : (alpha_preview.value ? ImGuiColorEditFlags.AlphaPreview : 0)) | (options_menu.value ? 0 : ImGuiColorEditFlags.NoOptions); ImGui.Text("Color widget:"); @@ -1077,9 +1113,10 @@ if (ImGui.TreeNode("Child regions")) { /* static */ const disable_mouse_wheel: Static = STATIC("disable_mouse_wheel", false); + /* static */ const disable_menu: Static = STATIC("disable_menu", false); ImGui.Checkbox("Disable Mouse Wheel", (value = disable_mouse_wheel.value) => disable_mouse_wheel.value = value); + ImGui.Checkbox("Disable Menu", (value = disable_menu.value) => disable_menu.value = value); - ImGui.Text("Without border"); /* static */ const line: Static = STATIC("line", 50); let goto_line: boolean = ImGui.Button("Goto"); ImGui.SameLine(); @@ -1087,32 +1124,46 @@ goto_line = ImGui.InputInt("##Line", (value = line.value) => line.value = value, 0, 0, ImGuiInputTextFlags.EnterReturnsTrue) || goto_line; ImGui.PopItemWidth(); - ImGui.BeginChild("Sub1", new ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5,300), false, ImGuiWindowFlags.HorizontalScrollbar | (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0)); - for (let i = 0; i < 100; i++) + // Child 1: no border, enable horizontal scrollbar { - ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); - if (goto_line && line.value === i) + ImGui.BeginChild("Child1", new ImVec2(ImGui.GetWindowContentRegionWidth() * 0.5, 300), false, ImGuiWindowFlags.HorizontalScrollbar | (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0)); + for (let i = 0; i < 100; i++) + { + ImGui.Text(`${("0000" + i.toString()).substr(-4)}: scrollable region`); + if (goto_line && line.value === i) + ImGui.SetScrollHere(); + } + if (goto_line && line.value >= 100) ImGui.SetScrollHere(); + ImGui.EndChild(); } - if (goto_line && line.value >= 100) - ImGui.SetScrollHere(); - ImGui.EndChild(); ImGui.SameLine(); - ImGui.PushStyleVar(ImGuiStyleVar.ChildRounding, 5.0); - ImGui.BeginChild("Sub2", new ImVec2(0,300), true, (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0)); - ImGui.Text("With border"); - ImGui.Columns(2); - for (let i = 0; i < 100; i++) + // Child 2: rounded border { - if (i === 50) - ImGui.NextColumn(); - const buf: string = `${("00000000" + (i*5731).toString(16)).substr(-8)}`; - ImGui.Button(buf, new ImVec2(-1.0, 0.0)); + ImGui.PushStyleVar(ImGuiStyleVar.ChildRounding, 5.0); + ImGui.BeginChild("Child2", new ImVec2(0,300), true, (disable_mouse_wheel.value ? ImGuiWindowFlags.NoScrollWithMouse : 0) | (disable_menu ? 0 : ImGuiWindowFlags.MenuBar)); + if (!disable_menu && ImGui.BeginMenuBar()) + { + if (ImGui.BeginMenu("Menu")) + { + ShowExampleMenuFile(); + ImGui.EndMenu(); + } + ImGui.EndMenuBar(); + } + ImGui.Columns(2); + for (let i = 0; i < 100; i++) + { + if (i === 50) + ImGui.NextColumn(); + const buf: string = `${("00000000" + (i*5731).toString(16)).substr(-8)}`; + ImGui.Button(buf, new ImVec2(-1.0, 0.0)); + } + ImGui.EndChild(); + ImGui.PopStyleVar(); } - ImGui.EndChild(); - ImGui.PopStyleVar(); ImGui.TreePop(); } @@ -1555,6 +1606,7 @@ ImGui.PopStyleVar(); if (ImGui.Button("OK", new ImVec2(120,0))) { ImGui.CloseCurrentPopup(); } + ImGui.SetItemDefaultFocus(); ImGui.SameLine(); if (ImGui.Button("Cancel", new ImVec2(120,0))) { ImGui.CloseCurrentPopup(); } ImGui.EndPopup(); @@ -1574,7 +1626,7 @@ ImGui.OpenPopup("Stacked 2"); if (ImGui.BeginPopupModal("Stacked 2")) { - ImGui.Text("Hello from Stacked The Second"); + ImGui.Text("Hello from Stacked The Second!"); if (ImGui.Button("Close")) ImGui.CloseCurrentPopup(); ImGui.EndPopup(); @@ -1804,18 +1856,24 @@ ImGui.BulletText(lines[i]); } - if (ImGui.CollapsingHeader("Inputs & Focus")) + if (ImGui.CollapsingHeader("Inputs, Navigation & Focus")) { const io: ImGuiIO = ImGui.GetIO(); - ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); - ImGui.SameLine(); ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); ImGui.Text(`WantCaptureMouse: ${io.WantCaptureMouse}`); ImGui.Text(`WantCaptureKeyboard: ${io.WantCaptureKeyboard}`); ImGui.Text(`WantTextInput: ${io.WantTextInput}`); ImGui.Text(`WantMoveMouse: ${io.WantMoveMouse}`); + ImGui.Text(`NavActive: ${io.NavActive}, NavVisible: ${io.NavVisible}`); - if (ImGui.TreeNode("Keyboard & Mouse State")) + ImGui.Checkbox("io.MouseDrawCursor", (value = io.MouseDrawCursor) => io.MouseDrawCursor = value); + ImGui.SameLine(); ShowHelpMarker("Request ImGui to render a mouse cursor for you in software. Note that a mouse cursor rendered via your application GPU rendering path will feel more laggy than hardware cursor, but will be more in sync with your other visuals.\n\nSome desktop applications may use both kinds of cursors (e.g. enable software cursor only when resizing/dragging something)."); + ImGui.CheckboxFlags("io.NavFlags: EnableGamepad", (value = io.NavFlags) => io.NavFlags = value, ImGui.ImGuiNavFlags.EnableGamepad); + ImGui.CheckboxFlags("io.NavFlags: EnableKeyboard", (value = io.NavFlags) => io.NavFlags = value, ImGui.ImGuiNavFlags.EnableKeyboard); + ImGui.CheckboxFlags("io.NavFlags: MoveMouse", (value = io.NavFlags) => io.NavFlags = value, ImGui.ImGuiNavFlags.MoveMouse); + ImGui.SameLine(); ShowHelpMarker("Request ImGui to move your move cursor when using gamepad/keyboard navigation. NewFrame() will change io.MousePos and set the io.WantMoveMouse flag, your backend will need to apply the new mouse position."); + + if (ImGui.TreeNode("Keyboard, Mouse & Navigation State")) { if (ImGui.IsMousePosValid()) ImGui.Text(`Mouse pos: (${io.MousePos.x}, ${io.MousePos.x})`); @@ -1832,6 +1890,10 @@ ImGui.Text("Keys release:"); for (let i = 0; i < IM_ARRAYSIZE(io.KeysDown); i++) if (ImGui.IsKeyReleased(i)) { ImGui.SameLine(); ImGui.Text(i.toString()); } ImGui.Text(`Keys mods: ${io.KeyCtrl ? "CTRL " : ""}${io.KeyShift ? "SHIFT " : ""}${io.KeyAlt ? "ALT " : ""}${io.KeySuper ? "SUPER " : ""}`); + ImGui.Text("NavInputs down:"); for (let i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputs[i] > 0.0) { ImGui.SameLine(); ImGui.Text(`[${i}] ${io.NavInputs[i].toFixed(2)}`); } + ImGui.Text("NavInputs pressed:"); for (let i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputsDownDuration[i] == 0.0) { ImGui.SameLine(); ImGui.Text(`[${i}]`); } + ImGui.Text("NavInputs duration:"); for (let i = 0; i < IM_ARRAYSIZE(io.NavInputs); i++) if (io.NavInputsDownDuration[i] >= 0.0) { ImGui.SameLine(); ImGui.Text(`[${i}] ${io.NavInputsDownDuration[i].toFixed(2)}`); } + ImGui.Button("Hovering me sets the\nkeyboard capture flag"); if (ImGui.IsItemHovered()) ImGui.CaptureKeyboardFromApp(true); @@ -1879,11 +1941,22 @@ ImGui.InputText("3 (tab skip)", buf.value, IM_ARRAYSIZE(buf.value)); if (ImGui.IsItemActive()) has_focus = 3; ImGui.PopAllowKeyboardFocus(); + if (has_focus) ImGui.Text(`Item with focus: ${has_focus}`); else ImGui.Text("Item with focus: "); - ImGui.TextWrapped("Cursor & selection are preserved when refocusing last used item in code."); + + // Use >= 0 parameter to SetKeyboardFocusHere() to focus an upcoming item + /* static */ const f3: Static> = STATIC>("f3", [ 0.0, 0.0, 0.0 ]); + let focus_ahead: number = -1; + if (ImGui.Button("Focus on X")) focus_ahead = 0; ImGui.SameLine(); + if (ImGui.Button("Focus on Y")) focus_ahead = 1; ImGui.SameLine(); + if (ImGui.Button("Focus on Z")) focus_ahead = 2; + if (focus_ahead != -1) ImGui.SetKeyboardFocusHere(focus_ahead); + ImGui.SliderFloat3("Float3", f3.value, 0.0, 1.0) + + ImGui.TextWrapped("NB: Cursor & selection are preserved when refocusing last used item in code."); ImGui.TreePop(); } @@ -1899,7 +1972,8 @@ `IsWindowFocused() = ${ImGui.IsWindowFocused()}\n` + `IsWindowFocused(_ChildWindows) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.ChildWindows)}\n` + `IsWindowFocused(_ChildWindows|_RootWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.ChildWindows | ImGuiFocusedFlags.RootWindow)}\n` + - `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.RootWindow)}\n`); + `IsWindowFocused(_RootWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.RootWindow)}\n` + + `IsWindowFocused(_AnyWindow) = ${ImGui.IsWindowFocused(ImGuiFocusedFlags.AnyWindow)}\n`); // Testing IsWindowHovered() function with its various flags (note that the flags can be combined) ImGui.BulletText( @@ -1908,7 +1982,8 @@ `IsWindowHovered(_AllowWhenBlockedByActiveItem) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.AllowWhenBlockedByActiveItem)}\n` + `IsWindowHovered(_ChildWindows) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.ChildWindows)}\n` + `IsWindowHovered(_ChildWindows|_RootWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.ChildWindows | ImGuiHoveredFlags.RootWindow)}\n` + - `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.RootWindow)}\n"`); + `IsWindowHovered(_RootWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.RootWindow)}\n"` + + `IsWindowHovered(_AnyWindow) = ${ImGui.IsWindowHovered(ImGuiHoveredFlags.AnyWindow)}\n"`); // Testing IsItemHovered() function (because BulletText is an item itself and that would affect the output of IsItemHovered, we pass all lines in a single items to shorten the code) ImGui.Button("ITEM"); @@ -1940,7 +2015,9 @@ // Draw a line between the button and the mouse cursor const draw_list: ImGui.ImDrawList = ImGui.GetWindowDrawList(); draw_list.PushClipRectFullScreen(); - draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); + // draw_list->AddLine(io.MouseClickedPos[0], io.MousePos, ImGui::GetColorU32(ImGuiCol_Button), 4.0f); + draw_list.AddLine(io.MouseClickedPos[0], io.MousePos, ImGui.GetColorU32(ImGuiCol.Button), 4.0); + // draw_list.AddLine(ImGui.CalcItemRectClosestPoint(io.MousePos, true, -2.0), io.MousePos, ImGui.ColorConvertFloat4ToU32(ImGui.GetStyle().Colors[ImGuiCol.Button]), 4.0); draw_list.PopClipRect(); // Drag operations gets "unlocked" when the mouse has moved past a certain threshold (the default threshold is stored in io.MouseDragThreshold) @@ -1965,7 +2042,7 @@ { const label: string = `Mouse cursor ${i}: ${mouse_cursors_names[i]}`; ImGui.Bullet(); ImGui.Selectable(label, false); - if (ImGui.IsItemHovered()) + if (ImGui.IsItemHovered() || ImGui.IsItemFocused()) ImGui.SetMouseCursor(i); } ImGui.TreePop(); @@ -1979,7 +2056,7 @@ // Here we use the simplified Combo() api that packs items into a single literal string. Useful for quick combo boxes where the choices are known locally. export function ShowStyleSelector(label: string): boolean { - /* static */ const style_idx: Static = STATIC("style_idx", 0); + /* static */ const style_idx: Static = STATIC("style_idx", -1); if (ImGui.Combo(label, (value = style_idx.value) => style_idx.value = value, "Classic\0Dark\0Light\0")) { switch (style_idx.value) @@ -2011,7 +2088,7 @@ ShowHelpMarker( "- Load additional fonts with io.Fonts->AddFontFromFileTTF().\n" + "- The font atlas is built when calling io.Fonts->GetTexDataAsXXXX() or io.Fonts->Build().\n" + - "- Read FAQ and documentation in extra_fonts/ for more details.\n" + + "- Read FAQ and documentation in misc/fonts for more details.\n" + "- If you need to add/remove fonts at runtime (e.g. for DPI change), do it before calling NewFrame()."); } @@ -2127,7 +2204,7 @@ ImGui.RadioButton("Alpha", (value = alpha_flags.value) => alpha_flags.value = value, ImGuiColorEditFlags.AlphaPreview); ImGui.SameLine(); ImGui.RadioButton("Both", (value = alpha_flags.value) => alpha_flags.value = value, ImGuiColorEditFlags.AlphaPreviewHalf); - ImGui.BeginChild("#colors", new ImVec2(0, 300), true, ImGuiWindowFlags.AlwaysVerticalScrollbar | ImGuiWindowFlags.AlwaysHorizontalScrollbar); + ImGui.BeginChild("#colors", new ImVec2(0, 300), true, ImGuiWindowFlags.AlwaysVerticalScrollbar | ImGuiWindowFlags.AlwaysHorizontalScrollbar | ImGuiWindowFlags.NavFlattened); ImGui.PushItemWidth(-160); for (let i = 0; i < ImGuiCol.COUNT; i++) { @@ -2139,7 +2216,7 @@ if (!style.Colors[i].Equals(ref.Colors[i])) { // Tips: in a real user application, you may want to merge and use an icon font into the main font, so instead of "Save"/"Revert" you'd use icons. - // Read the FAQ and extra_fonts/README.txt about using icon fonts. It's really easy and super convenient! + // Read the FAQ and misc/fonts/README.txt about using icon fonts. It's really easy and super convenient! ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Save")) ref.Colors[i].Copy(style.Colors[i]); ImGui.SameLine(0.0, style.ItemInnerSpacing.x); if (ImGui.Button("Revert")) style.Colors[i].Copy(ref.Colors[i]); } @@ -2176,6 +2253,7 @@ // ImGui.Text("The quick brown fox jumps over the lazy dog"); // ImGui.PopFont(); // ImGui.DragFloat("Font scale", &font->Scale, 0.005f, 0.3f, 2.0f, "%.1f"); // Scale only this font + // ImGui.InputFloat("Font offset", &font->DisplayOffset.y, 1, 1, 0); // ImGui.SameLine(); ShowHelpMarker("Note than the default embedded font is NOT meant to be scaled.\n\nFont are currently rendered into bitmaps at a given size at the time of building the atlas. You may oversample them to get some flexibility with scaling. You can also render at multiple sizes and select which one to use at runtime.\n\n(Glimmer of hope: the atlas system should hopefully be rewritten in the future to make scaling more natural and automatic.)"); // ImGui.Text("Ascent: %f, Descent: %f, Height: %f", font->Ascent, font->Descent, font->Ascent - font->Descent); // ImGui.Text("Fallback character: '%c' (%d)", font->FallbackChar, font->FallbackChar); @@ -2310,15 +2388,17 @@ } if (ImGui.BeginMenu("Colors")) { - ImGui.PushStyleVar(ImGuiStyleVar.FramePadding, new ImVec2(0,0)); + const sz: number = ImGui.GetTextLineHeight(); for (let i = 0; i < ImGuiCol.COUNT; i++) { const name: string = ImGui.GetStyleColorName(i as ImGuiCol); ImGui.ColorButton(name, ImGui.GetStyleColorVec4(i as ImGuiCol)); + const p: ImGui.interface_ImVec2 = ImGui.GetCursorScreenPos(); + ImGui.GetWindowDrawList().AddRectFilled(p, new ImVec2(p.x+sz, p.y+sz), ImGui.GetColorU32(i as ImGuiCol)); + ImGui.Dummy(new ImVec2(sz, sz)); ImGui.SameLine(); ImGui.MenuItem(name); } - ImGui.PopStyleVar(); ImGui.EndMenu(); } if (ImGui.BeginMenu("Disabled", false)) // Disabled @@ -2351,10 +2431,10 @@ { class CustomConstraints // Helper functions to demonstrate programmatic constraints { - public static Square(data: ImGuiSizeConstraintCallbackData): void { + public static Square(data: ImGuiSizeCallbackData): void { data.DesiredSize.x = data.DesiredSize.y = IM_MAX(data.DesiredSize.x, data.DesiredSize.y); } - public static Step(data: ImGuiSizeConstraintCallbackData): void { + public static Step(data: ImGuiSizeCallbackData): void { const step: number = data.UserData; data.DesiredSize.x = Math.floor(data.DesiredSize.x / step + 0.5) * step; data.DesiredSize.y = Math.floor(data.DesiredSize.y / step + 0.5) * step; @@ -2406,7 +2486,7 @@ const window_pos: Readonly = new ImVec2((corner.value & 1) ? ImGui.GetIO().DisplaySize.x - DISTANCE : DISTANCE, (corner.value & 2) ? ImGui.GetIO().DisplaySize.y - DISTANCE : DISTANCE); const window_pos_pivot: Readonly = new ImVec2((corner.value & 1) ? 1.0 : 0.0, (corner.value & 2) ? 1.0 : 0.0); ImGui.SetNextWindowPos(window_pos, ImGuiCond.Always, window_pos_pivot); - ImGui.PushStyleColor(ImGuiCol.WindowBg, new ImVec4(0.0, 0.0, 0.0, 0.3)); // Transparent background + ImGui.SetNextWindowBgAlpha(0.3); // Transparent background if (ImGui.Begin("Example: Fixed Overlay", p_open, ImGuiWindowFlags.NoTitleBar|ImGuiWindowFlags.NoResize|ImGuiWindowFlags.AlwaysAutoResize|ImGuiWindowFlags.NoMove|ImGuiWindowFlags.NoSavedSettings)) { ImGui.Text("Simple overlay\nin the corner of the screen.\n(right-click to change position)"); @@ -2418,11 +2498,11 @@ if (ImGui.MenuItem("Top-right", null, corner.value === 1)) corner.value = 1; if (ImGui.MenuItem("Bottom-left", null, corner.value === 2)) corner.value = 2; if (ImGui.MenuItem("Bottom-right", null, corner.value === 3)) corner.value = 3; + if (p_open() && ImGui.MenuItem("Close")) p_open(false); ImGui.EndPopup(); } ImGui.End(); } - ImGui.PopStyleColor(); } // Demonstrate using "##" and "###" in identifiers to manipulate ID generation. @@ -2527,7 +2607,7 @@ { adding_preview = true; points.value.push_back(mouse_pos_in_canvas); - if (!ImGui.GetIO().MouseDown[0]) + if (!ImGui.IsMouseDown(0)) adding_line.value = adding_preview = false; } if (ImGui.IsItemHovered()) @@ -2672,14 +2752,14 @@ ImGui.PushStyleVar(ImGuiStyleVar.ItemSpacing, new ImVec2(4,1)); // Tighten spacing if (copy_to_clipboard) ImGui.LogToClipboard(); + const col_default_text: Readonly = ImGui.GetStyleColorVec4(ImGuiCol.Text); for (let i = 0; i < this.Items.Size; i++) { // const char* item = Items[i]; const item: string = this.Items.Data[i]; if (!filter.value.PassFilter(item)) continue; - // ImVec4 col = ImVec4(1.0f,1.0f,1.0f,1.0f); // A better implementation may store a type per-item. For the sample let's just parse the text. - let col: ImVec4 = new ImVec4(1.0,1.0,1.0,1.0); // A better implementation may store a type per-item. For the sample let's just parse the text. + let col: ImGui.interface_ImVec4 = col_default_text // if (strstr(item, "[error]")) col = ImColor(1.0f,0.4f,0.4f,1.0f); if (/\[error\]/.test(item)) col = new ImVec4(1.0,0.4,0.4,1.0); // else if (strncmp(item, "# ", 2) === 0) col = ImColor(1.0f,0.78f,0.58f,1.0f); @@ -2698,6 +2778,7 @@ ImGui.Separator(); // Command-line + let reclaim_focus: boolean = false; if (ImGui.InputText("Input", this.InputBuf, IM_ARRAYSIZE(this.InputBuf), ImGuiInputTextFlags.EnterReturnsTrue|ImGuiInputTextFlags.CallbackCompletion|ImGuiInputTextFlags.CallbackHistory, ExampleAppConsole.TextEditCallbackStub, this)) { // char* input_end = InputBuf+strlen(InputBuf); @@ -2708,10 +2789,12 @@ this.ExecCommand(this.InputBuf.buffer); // strcpy(InputBuf, ""); this.InputBuf.buffer = ""; + reclaim_focus = true; } - // Demonstrate keeping auto focus on the input box - if (ImGui.IsItemHovered() || (ImGui.IsWindowFocused(ImGuiFocusedFlags.RootAndChildWindows) && !ImGui.IsAnyItemActive() && !ImGui.IsMouseClicked(0))) + // Demonstrate keeping focus on the input box + ImGui.SetItemDefaultFocus(); + if (reclaim_focus) ImGui.SetKeyboardFocusHere(-1); // Auto focus previous widget ImGui.End(); diff --git a/imgui_memory_editor.js b/imgui_memory_editor.js index e9f27e2..11bc4a3 100644 --- a/imgui_memory_editor.js +++ b/imgui_memory_editor.js @@ -163,8 +163,8 @@ // ImGui.BeginChild("##scrolling", new ImVec2(0, -ImGui.GetItemsLineHeightWithSpacing())); ImGui.BeginChild("##scrolling", new imgui_2.ImVec2(0, -ImGui.GetFrameHeightWithSpacing())); const draw_list = ImGui.GetWindowDrawList(); - ImGui.PushStyleVar(9 /* FramePadding */, new imgui_2.ImVec2(0, 0)); - ImGui.PushStyleVar(12 /* ItemSpacing */, new imgui_2.ImVec2(0, 0)); + ImGui.PushStyleVar(10 /* FramePadding */, new imgui_2.ImVec2(0, 0)); + ImGui.PushStyleVar(13 /* ItemSpacing */, new imgui_2.ImVec2(0, 0)); const line_total_count = 0 | ((mem_size + this.Rows - 1) / this.Rows); const clipper = new imgui_3.ImGuiListClipper(line_total_count, s.LineHeight); const visible_start_addr = clipper.DisplayStart * this.Rows; @@ -445,4 +445,4 @@ MemoryEditor.Sizes = Sizes; })(MemoryEditor = exports.MemoryEditor || (exports.MemoryEditor = {})); // #undef _PRISizeT -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfbWVtb3J5X2VkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX21lbW9yeV9lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGtFQUFrRTtBQUNsRSxzRUFBc0U7QUFDdEUsaUVBQWlFO0FBQ2pFLEVBQUU7QUFDRiw0REFBNEQ7QUFDNUQseUtBQXlLO0FBQ3pLLEVBQUU7QUFDRixTQUFTO0FBQ1QsNkdBQTZHO0FBQzdHLDRLQUE0SztBQUM1SyxFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUNwQyw0QkFBNEI7QUFDNUIsZ0VBQWdFO0FBQ2hFLGlCQUFpQjtBQUNqQixFQUFFO0FBQ0YsYUFBYTtBQUNiLDJCQUEyQjtBQUMzQiw4R0FBOEc7QUFDOUcsNEVBQTRFO0FBQzVFLHNIQUFzSDtBQUN0SCw2SEFBNkg7QUFDN0gsMkRBQTJEO0FBQzNELG9HQUFvRztBQUNwRywrRUFBK0U7QUFDL0UseUlBQXlJO0FBQ3pJLDhJQUE4STtBQUM5SSwyTEFBMkw7QUFDM0wsMEhBQTBIO0FBQzFILGdHQUFnRztBQUNoRyxxREFBcUQ7QUFDckQsRUFBRTtBQUNGLGFBQWE7QUFDYiw4SUFBOEk7O0FBRTlJLGVBQWU7QUFDZix3Q0FBd0M7QUFFeEMsaUNBQWlDO0FBSWpDLG1DQUF5QztBQUV6QyxtQ0FBaUM7QUFFakMsbUNBQTJDO0FBSTNDO0lBQUE7UUFFSSw0QkFBNEI7UUFFNUIsV0FBVztRQUNYLG1KQUFtSjtRQUM1SSxTQUFJLEdBQVksS0FBSyxDQUFDO1FBQzdCLDRHQUE0RztRQUNyRyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQ2pDLHlFQUF5RTtRQUNsRSxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLHlFQUF5RTtRQUNsRSxpQkFBWSxHQUFZLElBQUksQ0FBQztRQUNwQyx5RUFBeUU7UUFDbEUsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDckMseUVBQXlFO1FBQ2xFLHFCQUFnQixHQUFZLElBQUksQ0FBQztRQUN4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 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1ndWlfbWVtb3J5X2VkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImltZ3VpX21lbW9yeV9lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGtFQUFrRTtBQUNsRSxzRUFBc0U7QUFDdEUsaUVBQWlFO0FBQ2pFLEVBQUU7QUFDRiw0REFBNEQ7QUFDNUQseUtBQXlLO0FBQ3pLLEVBQUU7QUFDRixTQUFTO0FBQ1QsNkdBQTZHO0FBQzdHLDRLQUE0SztBQUM1SyxFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUNwQyw0QkFBNEI7QUFDNUIsZ0VBQWdFO0FBQ2hFLGlCQUFpQjtBQUNqQixFQUFFO0FBQ0YsYUFBYTtBQUNiLDJCQUEyQjtBQUMzQiw4R0FBOEc7QUFDOUcsNEVBQTRFO0FBQzVFLHNIQUFzSDtBQUN0SCw2SEFBNkg7QUFDN0gsMkRBQTJEO0FBQzNELG9HQUFvRztBQUNwRywrRUFBK0U7QUFDL0UseUlBQXlJO0FBQ3pJLDhJQUE4STtBQUM5SSwyTEFBMkw7QUFDM0wsMEhBQTBIO0FBQzFILGdHQUFnRztBQUNoRyxxREFBcUQ7QUFDckQsRUFBRTtBQUNGLGFBQWE7QUFDYiw4SUFBOEk7O0FBRTlJLGVBQWU7QUFDZix3Q0FBd0M7QUFFeEMsaUNBQWlDO0FBSWpDLG1DQUF5QztBQUV6QyxtQ0FBaUM7QUFFakMsbUNBQTJDO0FBSTNDO0lBQUE7UUFFSSw0QkFBNEI7UUFFNUIsV0FBVztRQUNYLG1KQUFtSjtRQUM1SSxTQUFJLEdBQVksS0FBSyxDQUFDO1FBQzdCLDRHQUE0RztRQUNyRyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQ2pDLHlFQUF5RTtRQUNsRSxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLHlFQUF5RTtRQUNsRSxpQkFBWSxHQUFZLElBQUksQ0FBQztRQUNwQyx5RUFBeUU7UUFDbEUsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDckMseUVBQXlFO1FBQ2xFLHFCQUFnQixHQUFZLElBQUksQ0FBQztRQUN4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 \ No newline at end of file